如何在LDAP中使用身份验证设置Tomcat?

时间:2012-04-17 14:16:02

标签: authentication tomcat login ldap access-denied

  

“如何在Tomcat中使用LDAP进行身份验证   授权“

     

“通过Tomcat中的web.xml进行LDAP身份验证”

     

“LDAP身份验证要求及其操作方法”

我似乎不是唯一一个在这个问题上挣扎的人。 使用当前配置,我可以使用LDAP用户进行身份验证,而不是使用系统或tomcat用户进行身份验证。问题是每当我登录时,我都被拒绝访问我应该看到的文件。

我目前有一个带有以下信息的web.xml

<security-constraint>
<web-resource-collection>
<web-resource-name>Nrt</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Home</realm-name>
</login-config>

以及包含以下内容的server.xml

<Realm className="org.apache.catalina.realm.JNDIRealm"
             connectionURL="ldap://192.168.75.146:389"
             userPattern="uid={0},ou=people,dc=localhost,dc=localdomain"
             roleBase="cn=admin,ou=group,dc=localhost,dc=localdomain"
             roleName="cn"
             roleSearch="memberUid={1}"
             debug="99"/>

我试图在网上找到文档,但我只是卡住了。到目前为止,我已经设法在没有LDAP用户的情况下访问它,或者使用LDAP用户登录而不访问文件。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

如果我理解正确,您可以通过LDAP进行身份验证,但授权部分无法正常工作。根据您提供的信息,您将错过角色与组之间的映射。您可以找到说明here