【发布时间】:2012-07-10 10:43:59
【问题描述】:
如何使 tomcat/jndi 使用身份验证用户绑定到 ldap 以进行组搜索?
问题:
- servlet 的基于 FORM 的简单 Tomcat/jndiRealm/ldap 身份验证
- 已经设置,以便用户确实正确地进行身份验证(绑定模式)
- 但是,ldap 服务器不允许匿名绑定查看我感兴趣的组。current-authenticating-user 可以查看这些组
- 我不想使用 connectionName 和 connectionPassword
我希望由当前正在验证的用户完成角色搜索,但即使在绑定模式下,wireshark 也会显示在初始用户验证之后完成了匿名绑定。
可行的解决方法,但不是我想要的:
- 使用可以查看组的用户的 connectionName 和 connectionPassword
- 为领域设置 commonRole
(我没有控制 ldap 服务器)
来自我的(非工作)server.xml
<Realm className="org.apache.catalina.realm.JNDIRealm"
connectionURL="ldap://localhost:389"
userPattern="cn={0},ou=people,o=myO,dc=myDc,dc=com"
roleBase="ou=groups,o=myO,dc=myDc,dc=com"
roleName="cn"
roleSearch="member={0}" />
【问题讨论】: