配置 Apache Shiro 以使用 Neo4j

Configuring Apache Shiro to work with Neo4j

我正在尝试使用 shiro.ini 文件将 Apache Shiro 配置为与 Neo4j 一起工作。

这是我的 shiro.ini 文件中负责身份验证的部分:

...
ds = org.apache.shiro.jndi.JndiObjectFactory
ds.resourceName = java:comp/env/jdbc/Neo4jDb
# What type do I set here
ds.requiredType = 

jdbcRealm = org.apache.shiro.realm.jdbc.JdbcRealm
jdbcRealm.permissionsLookupEnabled = true
jdbcRealm.authenticationQuery = <Cypher Query>
jdbcRealm.userRolesQuery = <Cypher Query>
jdbcRealm.permissionsQuery = <Cypher Query>
jdbcRealm.credentialsMatcher = $passwordMatcher
jdbcRealm.dataSource=$ds
securityManager.realms = $jdbcRealm
...

在我的 context.xml

...
<Resource auth="Container" driverClassName="org.neo4j" maxIdle="30" maxTotal="50" maxWaitMillis="10000" 
        name="jdbc/Neo4jDb" password="p4ssw0rd" type="" url="jdbc:neo4j:bolt://localhost/" username="neo4j"/>

我的问题是,我在 shiro.ini 和 context.xml

中设置了什么类型

如果这不起作用,我对如何使 shiro 与 neo4j 一起工作的替代解决方案感兴趣,或者如果 neo4j 具有良好的内置身份验证和授权,我会更好,我愿意将其用作一个解决方案。

你应该不需要设置它,你是运行进入一个现有的问题吗?

这里有几个例子: http://shiro-user.582556.n2.nabble.com/How-to-use-a-DataSource-from-JNDI-td7566161.html

https://github.com/danielmt/shiro-primefaces-example/blob/master/src/main/webapp/WEB-INF/shiro.ini

您是否在 context.xml 中使用了正确的驱动程序 class?