Neo4j简单认证

时间:2015-04-23 15:57:32

标签: neo4j

我可以通过输入server: connect并登录来使用用户名和密码http://localhost:7474/登录。我可以通过执行查询来查看数据。

然后我立即切换到新标签或同一标签,然后转到:http://localhost:7474/db/data/,我得到:

{
  "errors" : [ {
    "message" : "No authorization header supplied.",
    "code" : "Neo.ClientError.Security.AuthorizationFailed"
  } ]
}

我无法使用相同的密码使用py2Neo或任何NEO4J库进行连接;他们返回完全相同的错误。

我做错了什么?

2 个答案:

答案 0 :(得分:2)

现在,所有REST API请求都必须包含Authorization标头。引用neo4j手册的REST API Authentication and Authorization页:

  

请求应包含一个Authorization标头,其值为Basic <payload>,其中“payload”是base64编码的字符串   “用户名:密码”

该页面包含一些示例。

注意:您也可以禁用身份验证 - 但您只能在个人计算机上执行此操作以进行开发。您可以通过在false中设置dbms.security.auth_enabled <neo4j-install-dir>/conf/neo4j-server.properties属性,然后重新启动服务器来完成此操作。

[增订]

顺便说一句,由于您的问题提到py2neo,您应该知道其Graph类支持“授权”。

答案 1 :(得分:1)

将此添加到您的http-header请求中:

授权:&#34;基本xxxx&#34;

xxxx = base64(用户名:密码)