此时,我的Ldap服务器有这个用户:
MyLdap服务器的密码是admin。
我的Glassfish控制台具有以下配置:
我的web.xml是这样的:
<security-constraint>
<display-name>Private</display-name>
<web-resource-collection>
<web-resource-name>secret</web-resource-name>
<description/>
<url-pattern>/secured/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
<http-method>HEAD</http-method>
<http-method>PUT</http-method>
<http-method>OPTIONS</http-method>
<http-method>TRACE</http-method>
<http-method>DELETE</http-method>
</web-resource-collection>
<auth-constraint>
<description/>
<role-name>secure</role-name>
</auth-constraint>
</security-constraint>
我的sun-web.xml有:
<security-role-mapping>
<role-name>secure</role-name>
<group-name>users</group-name>
</security-role-mapping>
当我要进行身份验证时,我将1作为用户名(uid)和catia(对应于userPassword)引入密码。
我无法登录。我做错了什么?
答案 0 :(得分:1)
我不熟悉glassfish LDAP配置,但至少,您的Base-DN似乎是错误的:“ou = users,ou = system”将是根据屏幕截图的正确值。< / p>
“search-bind-dn”值似乎也不正确:我认为它应该是您的LDAP管理员用户的DN,例如UID =管理员,OU =系统。
sun-web.xml中使用的安全角色映射也应该在“分配组”字段中定义相应的组(现在它是空的)。