ArangoDB身份验证和数据库

ArangoDB身份验证和数据库,arangodb,Arangodb,我正在使用Arangodb2.6的HTTP API(但我相信我也遇到了我将在以前的版本中描述的问题) 我使用user/passwd(root用户或现有用户)向ArangoDB进行身份验证 我使用相同的user/passwd创建了一个新数据库 当我尝试使用相同的user/passwd访问新创建的数据库时,我会得到一个401(未经授权) 当我尝试使用web仪表板时,我遇到了一个类似的问题,当我尝试访问数据库页面时,我被踢回登录屏幕,无法再登录。我做错什么了吗?这可能是一只虫子吗? 提前感谢。在2.6

我正在使用Arangodb2.6的HTTP API(但我相信我也遇到了我将在以前的版本中描述的问题)

  • 我使用user/passwd(root用户或现有用户)向ArangoDB进行身份验证
  • 我使用相同的user/passwd创建了一个新数据库
  • 当我尝试使用相同的user/passwd访问新创建的数据库时,我会得到一个401(未经授权)
  • 当我尝试使用web仪表板时,我遇到了一个类似的问题,当我尝试访问数据库页面时,我被踢回登录屏幕,无法再登录。我做错什么了吗?这可能是一只虫子吗?
    提前感谢。

    在2.6版本中,以下内容似乎可以在启用身份验证的情况下使用。 它使用HTTP REST API和
    curl

    首先,我们需要验证是否可以使用特权用户实际连接到_系统数据库。为了创建一个新的数据库,我们需要:

    curl --dump - --basic --user "root:rootpasswd" -X GET \
      http://127.0.0.1:8529/_db/_system/_api/version && echo
    
    这将返回一个HTTP200。 现在我们可以连接到_系统数据库,我们可以发出一个调用来创建一个新的数据库,名为“testdb”。我们将创建名为“testuser”的用户和密码“test1234”以连接到它:

    curl --dump - --basic --user "root:rootpasswd" -X POST \
      http://127.0.0.1:8529/_db/_system/_api/database \
      --data '{"name":"testdb","users":[{"username":"testuser","passwd":"test1234"}]}' && echo
    
    这应该返回HTTP 201

    现在,我们终于可以检查是否可以使用新用户连接到刚刚创建的数据库:

    curl --dump - --basic --user "testuser:test1234" -X GET \
      http://127.0.0.1:8529/_db/testdb/_api/version && echo
    
    这也应该返回HTTP200,这意味着您可以使用新用户连接到刚刚创建的数据库


    请检查这是否也适用于您。

    是的,它现在似乎正在工作。我不知道为什么当时它不起作用,也不能重现这个问题。如果我再次遇到这个问题,我会让你知道的。谢谢谢谢你的确认。如果问题再次出现,请告诉我们。