首页 文章

Jboss 6.4上的LDAP

提问于
浏览
0

我想在Jboss 6.4中实现LDAP验证,我是这方面的新手 . 我想解释一下我是如何理解这个过程的,并且我希望收到关于过程是否正确的意见,因为这里有几种方法可以做到 .

1.-在我的Jboss 6.4中定义一个安全域,这里我将放置LDAP角色: LdapUserMyWeb ,以及此角色的密码 .

login-config.xml

<application-policy name="LdapMyApp">
 <authentication>
 <login-module code="org.jboss.security.auth.spi.LdapExtLoginModule" flag="required" >
 <module-option name="java.naming.factory.initial">com.sun.jndi.ldap.LdapCtxFactory</module-option>
 <module-option name="java.naming.provider.url">ldap://localhost:10389</module-option> <!-- LDAP url-->
 <module-option name="java.naming.security.authentication">simple</module-option>

 <module-option name="bindDN">uid=LdapUserMyWeb,ou=system</module-option>
 <module-option name="bindCredential">myPassword</module-option>
 <module-option name="baseCtxDN">ou=people,o=sevenSeas</module-option> 
 <module-option name="rolesCtxDN">ou=groups,o=sevenSeas</module-option>

 </login-module>
 </authentication>
</application-policy>

2.-我将在WEB-INF中的 jboss-web.xml 中定义

<jboss-web>
  <security-domain>java:/jaas/LdapMyApp</security-domain>
</jboss-web>

3.-最后,我需要将特定的URL或servlet限制为某些角色 . 在此示例中,我们仅允许角色 “LdapUserMyWeb” 中的用户访问,

<security-constraint>
  <display-name>All resources</display-name>
  <web-resource-collection>
   <web-resource-name>All resources</web-resource-name>
   <url-pattern>/*</url-pattern>
  </web-resource-collection>
  <auth-constraint>
   <role-name>LdapUserMyWeb</role-name>
  </auth-constraint>
 </security-constraint>
 <login-config>
  <auth-method>BASIC</auth-method>
 </login-config>

3.-在我的Web应用程序(jee6)中,当为角色创建会话时,我将定义HttpSessionEvent和HttpSessionListener: LdapUserMyWeb .

在这里,我需要检查LDAP中是否存在用户和密码,如何从LDAP对象会话中获取此信息?

1 回答

相关问题