2016-01-24 73 views
0

我想在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?

回答