Problemas de autenticação usando Seam 2.1 contra LDAP

Viva,

Estou a tentar configurar a autenticação de uma aplicação utilizando o JBoss + Seam 2.1 e o LDAP, para isso segui o post indicado:
http://blog.furiousbob.com/2008/08/28/identity-management-de-verdade-com-novo-seam-21-beta/

O meu components.xml

    <security:ldap-identity-store    name="ldapIdentityStore"  
                                    server-address="sedna.cmarl.pt"  
                                    server-port="389"  
                                    user-DN-prefix="uid="  
                                    user-DN-suffix=",ou=Users,dc=cmarl,dc=pt"  
                                    user-context-DN="ou=Users,dc=cmarl,dc=pt"  
                                    user-password-attribute="userPassword"                                    
                                    bind-DN="cn=Manager,dc=cmarl,dc=pt"  
                                    bind-credentials="secret"                                     
                                    user-object-classes="person,uidObject"/>  
                                     
     
     <security:identity-manager identity-store="#{ldapIdentityStore}"/>   

quando ponho para correr a autenticação falha e devolve o seguinte erro:

    12:55:08,755 ERROR [SeamLoginModule] Error invoking login method  
    org.jboss.seam.security.management.IdentityManagementException: Authentication error  
        at org.jboss.seam.security.management.LdapIdentityStore.authenticate(LdapIdentityStore.java:441)  
        ...  
        at java.lang.Thread.run(Unknown Source)  
    Caused by: javax.naming.AuthenticationException: [LDAP: error code 49 - Invalid Credentials]  
        at com.sun.jndi.ldap.LdapCtx.mapErrorCode(Unknown Source)  
           .....  
             
       at org.jboss.seam.security.management.LdapIdentityStore.authenticate(LdapIdentityStore.java:420)  
       ... 77 more  

Este erro ocorre sempre seja qual for a bind-credentials esteja ela correcta ou errada, poderá ser um problema de encriptação?? :?

Se alguém tiver conhecimentos nesta área que possa ajudar…

Obrigado :slight_smile:

Paulo

Você usa o Active Directory?
Confere se o base DN é esse mesmo

Antes de mais obrigado pela resposta rápida. :slight_smile:

Não uso Active Directory e sim o base DN é esse mesmo até porque eu consigo estabelecer a ligação sem problemas através do LDAP Browser que instalei no Eclipse.

Entretanto para um pequeno teste substitui

para

e consegui efectuar o login sem problemas através do common name, uma vez que a estrutura do ldap que estou a utilizar foi desenvolvida de modo a ser o cn a distinguir os users.

Mas infelizmente isso não resolve o meu problema pois o que eu realmente pretendo é efectuar o login através do uid dos users.

Será que existe algum parâmetro que indique que o atributo de busca dos users deve ser o uid e não o cn?

Paulo