[原]OpenLDAP +Tomcat 集成

OpenLDAP +Tomcat 集成

前面的步骤:

基本可以看这些文章:

Tomcat OpenLDAP, 从配置到应用

http://www.blogjava.net/Unmi/archive/2008/01/03/172031.html#resources

TOMCAT中配置JNDIRealm实现用户认证

http://llpei.javaeye.com/blog/116609

配置文件server.xml

<Realm className="org.apache.catalina.realm.JNDIRealm" debug="99" connectionName="cn=Manager,o=ou,cn=wellsoon,cn=resources"

               connectionPassword="123456"

               connectionURL="ldap://192.168.1.113:389"

               userPattern="cn={0},o=bepc,o=dep,o=ou,cn=xx,cn=resources"

               userPassword="userPassword"

                     userRoleName="permid"

             />

我本来是以上2篇文章中的配置来的,但登录tomcat时总是拒绝访问,很郁闷。最后改为使用userRoleName 就可以登录(目前测试为permid 为权限属性代码,只有一个值)。

这个我的LDAP结构:

[原]OpenLDAP +Tomcat 集成

人员的结构ldif

dn: cn=qixx,o=bepc,o=dep,o=ou,cn=xx,cn=resources

objectClass: ePerson

cn: qixx

description: qixx

displayname: xx

userpassword: 123456

permid: login

departmentnumber:ou=ou1,o=dep,o=ou,cn=xx,cn=resources

其中cn表示用户的登录名。

ePerson是自己定义的

permid 表示用户权限

这些属性可以对应为上面的xml配置

如果想测试,可以使用tomcat测试。

1.       %TOMCAT_HOME% conf/ tomcat-users.xml 中增加角色(貌似不是必须~不了解)

<role rolename="login"/>

2.       修改%TOMCAT_HOME% webapps/manager/WEB-INF web.xml

[原]OpenLDAP +Tomcat 集成

增加了角色名为:login 正好和我的ldappermid的值对应上

3.       然后登录http://localhost:8080/ 输入用户名:qixx 密码:123456 登录成功

[原]OpenLDAP +Tomcat 集成

登录成功。

下一步需要测试一个用户多个权限,看看要如何登录。

阅读全文
类别: Ldap  查看评论

你可能感兴趣的:(openLdap)