我正在使用neo4j 1.9.4,并希望使用neo4jphp在(公共)网站上显示有关图形的一些信息。为了获取一些数据,我在neo4jphp中使用cypher查询。这些查询显然仅从图表中读取数据。
我必须确保网站访问者无法修改图表中的任何数据。因此,我设置了authentication-extension插件,并创建了两个用户(一个具有只读“RO”权限,另一个具有读写“RW”权限),如文档中所述。但是,neo4jphp中的cypher查询仅适用于具有RW权限的用户,而不适用于具有RO权限的用户。
我知道http://docs.neo4j.org/chunked/stable/security-server.html#_security_in_depth几乎解释了如何保护neo4j,但我绝对不知道如何做到这一点。特别是“arbitrary_code_execution”部分似乎很有趣,但我不知道如何利用它。
我该如何实现从Web服务器执行Cypher查询?另外:Web服务器(用于显示一些结果)和neo4j运行在不同的机器上。 我会感激任何帮助,谢谢! 编辑:我的情况实际上并不那么复杂,所以我相信一定有解决方案:从本地主机可以获得任何访问(读写)权限,而来自远程Web服务器的访问受到图形阅读的限制。我怎样能做到这一点?如果这不可能:我怎么才能限制远程Web服务器对一些预定义的(Cypher)查询的访问,其中用户只能提供一些参数?
我必须确保网站访问者无法修改图表中的任何数据。因此,我设置了authentication-extension插件,并创建了两个用户(一个具有只读“RO”权限,另一个具有读写“RW”权限),如文档中所述。但是,neo4jphp中的cypher查询仅适用于具有RW权限的用户,而不适用于具有RO权限的用户。
我知道http://docs.neo4j.org/chunked/stable/security-server.html#_security_in_depth几乎解释了如何保护neo4j,但我绝对不知道如何做到这一点。特别是“arbitrary_code_execution”部分似乎很有趣,但我不知道如何利用它。
我该如何实现从Web服务器执行Cypher查询?另外:Web服务器(用于显示一些结果)和neo4j运行在不同的机器上。 我会感激任何帮助,谢谢! 编辑:我的情况实际上并不那么复杂,所以我相信一定有解决方案:从本地主机可以获得任何访问(读写)权限,而来自远程Web服务器的访问受到图形阅读的限制。我怎样能做到这一点?如果这不可能:我怎么才能限制远程Web服务器对一些预定义的(Cypher)查询的访问,其中用户只能提供一些参数?