Synchro LDAP mauvais mot de passe

cancel
Showing results for 
Search instead for 
Did you mean: 
asko
Member II

Synchro LDAP mauvais mot de passe

Bonjour,

J'ai migré la version 3.3 vers la 3.4d au mois d'aout dernier.
Auparavant, la synchro sur l'openLDAP fonctionnait très bien.

Avec la version 3.4d, les utilisateurs sont bien authentifiés avec openLDAP, mais la synchro ne fonctionne plus

Avec wireshark, j'ai pu constater que lors de la synchro avec l'annuaire openLDAP, alfresco envoie bien le bon "CN", mais il remplace la variable credentials par "sdasdasdasdasd123123123".

J'ai beau changer le credential dans les fichiers properties, même à le mettre en clair dans les fichiers ldap-context.xml, rien n'y fait..

Est ce un bug ? ou ai je vraiment raté quelque chose ??

ça fait déjà 1 semaine que je planche dessus, et je ne vois pas ce que je peux tenter pour que ça fonctionne

Le fichier authenticate.properties

    ldap.authentication.allowGuestLogin=true
    ldap.authentication.userNameFormat=uid=%s,ou=Agents,ou=people,dc=ch-tourcoing,dc=fr
    ldap.authentication.java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
    ldap.authentication.java.naming.provider.url=ldap://ldap:389

    ldap.authentication.java.naming.security.authentication=SIMPLE

    ldap.authentication.escapeCommasInBind=false
    ldap.authentication.escapeCommasInUid=false
    ldap.authentication.defaultAdministratorUserNames=Manager,admin,root
    ldap.synchronization.active=true
    ldap.synchronization.java.naming.security.principal=cn=Manager,dc=ch-tourcoing,dc=fr

    ldap.synchronization.java.naming.security.credentials=xxxxxxxxxx  <- mais ce n'est pas sdasda…

    ldap.synchronization.queryBatchSize=9999  
    ldap.synchronization.attributeBatchSize=9999
    ldap.synchronization.groupQuery=(objectclass=groupOfUniqueNames)
    ldap.synchronization.groupDifferentialQuery=(&(objectclass=groupOfUniqueNames)(!(modifyTimestamp<={0})))
    ldap.synchronization.personQuery=(&(objectclass\=inetOrgPerson)(!(title\=PC)))
    ldap.synchronization.personDifferentialQuery=(&(objectclass\=inetOrgPerson)(!(modifyTimestamp<\={0})))
    ldap.synchronization.groupSearchBase=ou\=Groupes,ou\=Services,dc\=ch-tourcoing,dc\=fr
    ldap.synchronization.userSearchBase=ou\=Agents,ou\=people,dc\=ch-tourcoing,dc\=fr
    ldap.synchronization.modifyTimestampAttributeName=modifyTimestamp
    ldap.synchronization.timestampFormat=yyyyMMddHHmmss'Z'
    ldap.synchronization.userIdAttributeName=uid
    ldap.synchronization.userFirstNameAttributeName=givenName
    ldap.synchronization.userLastNameAttributeName=sn
    ldap.synchronization.userEmailAttributeName=mail
    ldap.synchronization.userOrganizationalIdAttributeName=o
    ldap.synchronization.defaultHomeFolderProvider=userHomesHomeFolderProvider
    ldap.synchronization.groupIdAttributeName=cn
    ldap.synchronization.groupDisplayNameAttributeName=cn
    ldap.synchronization.groupType=groupOfUniqueNames
    ldap.synchronization.personType=inetOrgPerson
    ldap.synchronization.groupMemberAttributeName=uniqueMember
    ldap.synchronization.enableProgressEstimation=false

Extrait du log

    Caused by: org.alfresco.repo.security.authentication.AuthenticationException: 01150138 Unable to connect to LDAP Server; check LDAP configuration  at org.alfresco.repo.security.authentication.ldap.LDAPInitialDirContextFactoryImpl.buildInitialDirContext(LDAPInitialDirContextFactoryImpl.java:118) at org.alfresco.repo.security.authentication.ldap.LDAPInitialDirContextFactoryImpl.getDefaultIntialDirContext(LDAPInitialDirContextFactoryImpl.java:89)  at org.alfresco.repo.security.authentication.ldap.LDAPInitialDirContextFactoryImpl.getDefaultIntialDirContext(LDAPInitialDirContextFactoryImpl.java:82)


ce que je vois dans la trame
    0000  00 00 0c 07 ac 64 00 24  21 33 79 5e 08 00 45 00   …..d.$ !3y^..E.
    0010  00 79 0b 75 40 00 40 06  50 e2 0a 64 64 6a 0a 80   .y.u@.@. P..ddj..
    0020  64 da be 24 01 85 d8 03  73 d9 ed 46 bc 22 80 18   d..$…. s..F."..
    0030  00 2e de 93 00 00 01 01  08 0a 18 df 78 ab 32 15   …….. ….x.2.
    0040  f6 da 30 43 02 01 01 60  3e 02 01 03 04 20 63 6e   ..0C…` >…. cn
    0050  3d 4d 61 6e 61 67 65 72  2c 64 63 3d 63 68 2d 74   =Manager ,dc=ch-t
    0060  6f 75 72 63 6f 69 6e 67  2c 64 63 3d 66 72 80 17   ourcoing ,dc=fr..
    0070  73 64 61 73 64 61 73 64  61 73 64 61 73 64 31 32   sdasdasd asdasd12
    0080  33 31 32 33 31 32 33                               3123123        



Merci de vos suggestions
2 Replies
eric003
Member II

Re: Synchro LDAP mauvais mot de passe

Bonjour,

j'ai le même problème que toi.

As tu trouvé une solution?


je suis avec alfresco 4.0 d

Mes logs catalina.out
    2012-02-19 13:57:53,129  ERROR [extensions.webscripts.AbstractRuntime] [http-8080-14] Exception from executeScript - redirecting to status template error: 01190002 Login failed
    org.springframework.extensions.webscripts.WebScriptException: 01190002 Login failed
       at org.alfresco.repo.web.scripts.bean.AbstractLoginBean.login(AbstractLoginBean.java:75)
       at org.alfresco.repo.web.scripts.bean.LoginPost.executeImpl(LoginPost.java:73)
       at org.springframework.extensions.webscripts.DeclarativeWebScript.executeImpl(DeclarativeWebScript.java:235)
       at org.springframework.extensions.webscripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:64)
       at org.alfresco.repo.web.scripts.RepositoryContainer$2.execute(RepositoryContainer.java:393)
       at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:388)
       at org.alfresco.repo.web.scripts.RepositoryContainer.transactionedExecute(RepositoryContainer.java:462)
       at org.alfresco.repo.web.scripts.RepositoryContainer.transactionedExecuteAs(RepositoryContainer.java:500)
       at org.alfresco.repo.web.scripts.RepositoryContainer.executeScript(RepositoryContainer.java:275)
       at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:372)
       at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:209)
       at org.springframework.extensions.webscripts.servlet.WebScriptServlet.service(WebScriptServlet.java:118)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:58)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
       at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470)
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
       at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
       at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
       at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
       at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
       at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
       at java.lang.Thread.run(Thread.java:662)
.properties

[listldap.authentication.active=true


ldap.authentication.allowGuestLogin=true


ldap.authentication.userNameFormat=uid=%s,ou=People,dc=niveau3,dc=niveau2,dc=fr


ldap.authentication.java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory



ldap.authentication.java.naming.provider.url=ldap://localhost:389



ldap.authentication.java.naming.security.authentication=simple



ldap.authentication.escapeCommasInBind=false



ldap.authentication.escapeCommasInUid=false



ldap.authentication.defaultAdministratorUserNames=mon.id,admin



ldap.synchronization.active=true



ldap.synchronization.java.naming.security.authentication=simple



ldap.synchronization.java.naming.security.principal=cn=admin,dc=niveau2,dc=fr



ldap.synchronization.java.naming.security.credentials=azerty



ldap.synchronization.queryBatchSize=0

   

ldap.synchronization.attributeBatchSize=0



ldap.synchronization.groupQuery=(objectclass\=groupOfNames)



ldap.synchronization.groupDifferentialQuery=(&(objectclass\=groupOfNames)(!(modifyTimestamp<\={0})))



ldap.synchronization.personQuery=(objectclass\=inetOrgPerson)



ldap.synchronization.personDifferentialQuery=(&(objectclass\=inetOrgPerson)(!(modifyTimestamp<\={0})))



ldap.synchronization.groupSearchBase=ou\=Groupes,dc\=niveau3,dc\=niveau2,dc\=fr <A quoi serve les \ devant =?



ldap.synchronization.userSearchBase=ou\=People,dc\=niveau3,dc\=niveau2,dc\=fr



ldap.synchronization.modifyTimestampAttributeName=modifyTimestamp



ldap.synchronization.timestampFormat=yyyyMMddHHmmss'Z'



ldap.synchronization.userIdAttributeName=uid



ldap.synchronization.userFirstNameAttributeName=givenName



ldap.synchronization.userLastNameAttributeName=sn



ldap.synchronization.userEmailAttributeName=mail



ldap.synchronization.userOrganizationalIdAttributeName=o



ldap.synchronization.defaultHomeFolderProvider=largeHomeFolderProvider



ldap.synchronization.groupIdAttributeName=cn



ldap.synchronization.groupDisplayNameAttributeName=description



ldap.synchronization.groupType=groupOfNames



ldap.synchronization.personType=inetOrgPerson



ldap.synchronization.groupMemberAttributeName=member



ldap.synchronization.enableProgressEstimation=false]


Merci
Eric

Résolu j'ai indiqué les 2 méthodes d'authenfication NTLM et ldap dans alfresco-global.propertie
asko
Member II

Re: Synchro LDAP mauvais mot de passe

En fait, j'ai déjà les 2 méthodes d'authentification.
Lorsqu'Alfresco fait une connexion de type "manager" sur le ldap, il envoie un mauvais mot de passe. C'est le mot de passe de "DraftAsaBrush", le code utilisé pour tenter une connexion anonyme sur le ldap.

Quoique j'indique dans les fichiers de config, c'est toujours ce mauvais mot de passe qui est envoyé