我想在Jboss 6.4中实现一个LDAP验证,我是这方面的新手。我想解释我是如何理解这个过程的,并且我希望得到关于过程是否正确的意见,因为在这里有几种方法可以做到这一点。Jboss上的LDAP 6.4
1.-在我的Jboss 6.4中定义一个安全域,在这里我将把LDAP角色:LdapUserMyWeb和这个角色的密码。
登录-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:我将在的jboss-web.xml中在定义WEB-INF
<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?