2012-04-04 30 views
5

Chcę stworzyć prostą aplikację internetową java z serwerem JBoss 7, aby umożliwić zalogowanie się z nazwy użytkownika/hasła wprowadzonego przez użytkownika i uwierzytelnić się przy pomocy ldap.Uwierzytelnianie LDAP z JBoss 7

Więc to, co napisałem w web.xml umieszczonym w katalogu WEB-INF/

<login-config> 
    <auth-method>BASIC</auth-method> 
    <realm-name>Enter user name and password</realm-name> 
</login-config> 

dodaje JBoss-web.xml w tym samym folderze

<?xml version="1.0" encoding="UTF-8"?> 
<jboss-web> 
    <security-domain>java:/jaas/website-domain</security-domain> 
</jboss-web> 

Potem dodał witryna internetowa sfera domeny w standalone.xml

<security-domain name="website-domain" cache-type="default"> 
    <authentication> 
     <login-module code="org.jboss.security.auth.spi.LdapExtLoginModule" flag="required"> 
      <module-option name="java.naming.factory.initial" value="com.sun.jndi.ldap.LdapCtxFactory"/> 
      <module-option name="java.naming.provider.url" value="ldap://localhost:10389"/> 
      <module-option name="bindDN" value="ou=people,dc=mycompany,dc=com" /> 
      <module-option name="bindCredential" value="shad"/> 
      <module-option name="allowEmptyPasswords" value="false"/> 
      <module-option name="Context.REFERRAL" value="follow"/> 
      <module-option name="throwValidateError" value="true"/> 
      <module-option name="allowEmptyPasswords" value="true"/> 
     </login-module> 
    </authentication> 
</security-domain> 

Tak jak nazwa użytkownika i hasło wprowadzone zostaną wysłane do tych modułów? Czy muszę napisać niestandardową dziedzinę JAAS? Czy jest ich przykład, że możecie się ze mną podzielić ??

Odpowiedz

1

Twój webapp musi wskazywać na swojej domenie zabezpieczeń stronie domeny przez dodanie odpowiedniego wiersza w WEB-INF/JBoss-web.xml

<security-domain flushOnSessionInvalidation="true">java:/jaas/website-domain</security-domain>

wierzę w JBoss 7 trzeba tylko określić internetową domenę (bez jAVA:/JAAS/ prefiksu)