Synchronisation LDAP

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

Re: Synchronisation LDAP

Merci pour ce document.
Il ne me reste plus qu'à tester.

Cordialement

JeanJot


Bon, ben maintenant je vais compléter par la partie Synchronization..qui a fini par marcher non sans probleme…
eweller
Member II

Re: Synchronisation LDAP

j'ai eu la question suivante :
Désolé de vous déranger, mais je rencontre un petit problème en suivant votre procédure: http://sites.google.com/site/blogewe/alfreco-ldap-configuration. En effet, vous avez reussi à synchroniser Alfresco avec le LDAP Domino mais je n'y parviens pas. Tout se passe bien sauf pour la récupération des groupes. Alfresco à besoin du DN pour trouver les groupes or lorsque je crée un groupOfNames LotusLDAP ne peut le faire ailleurs que sur la racine. Pas de racine, pas de DN, enfin je penses. à moins que vous ayez une solution pour lier sur la racine.

Ma question est comment créer un groupOfNames ailleurs que sur la racine avec Lotus LDAP, si c'est bien ce que vous avez fait ?
eweller
Member II

Re: Synchronisation LDAP

Si je comprend bien la question…..il s'agit de savoir comment créer un groupe dans l'annuaire Domino et le placer ailleurs que sous la racine ?……pour qu'il soit dans les résultats du Ldap query search basé non pas sous la racine mais sous /organisation …. ????  si oui il s'agit d'une question d'admin. domino donc pas franchement dans le scope de ce forum … mais ai-je bien compris ?   -  si oui je peux aider aussi….mais si vous solliciter le support éditeur vous aurez une réponse en bonne et due forme
pilate
Member II

Re: Synchronisation LDAP

Tout d'abord merci pour votre réponse réactive.

Et oui, c'était bien ma question. Mais j'aurais peut-être dû la poser autrement.
à savoir est-il possible de renseigner alfresco, dans le fichier ldap-authentication.properties, la racine du Domino LDAP pour trouver les groupes ou faut-il absolument mettre les groupes sous une entrée ?
Je penses à un truc comme
ldap.synchronization.groupSearchBase=RootDSE
pilate
Member II

Re: Synchronisation LDAP

Bon bah finalement je passe sur Apache Directory personne n'arrive à créer ce p… de group ailleurs que sous la racine ! Merci quand-même  :?
eweller
Member II

Re: Synchronisation LDAP

Bon bah finalement je passe sur Apache Directory personne n'arrive à créer ce p… de group ailleurs que sous la racine ! Merci quand-même  :?

Contrainte de l'annuaire Domino : dans la mesure ou un groupe peut inclure des users de plusieurs organisation…il ne sera que sous la racine …. de notre coté le filrage des groupes est fait sur une propriété ldap étendue du schema standard Domino….cependant a cause du probleme MD4/CIFS non supporté par Domino, on va aussi passer sur un montage via SAMBA…(et apres avoir ouvert un PMR chez IBM sur ce point)….dommage
pilate
Member II

Re: Synchronisation LDAP

le filrage des groupes est fait sur une propriété ldap étendue du schema standard Domino..
Ok pas tout compris  Smiley Surprisedops: …
.cependant a cause du probleme MD4/CIFS non supporté par Domino, on va aussi passer sur un montage via SAMBA
Tu as un Linux quelquepart ?

EDIT: non mais sinon je crois que je laisse vraiment tomber, ApacheDS est bien aussi ?
pilate
Member II

Re: Synchronisation LDAP

Bonjour,
J'ai un autre probleme. Jusqu'à présent je testais ma synchronisation LDAP sur environnement de développement où tout fonctionne pour le mieux. Mais en réalisant le tuto d'éric sur un environnement pré-installé (via éxecutable), j'ai des erreurs comme celle-ci:
16:24:21,893 WARN  [org.alfresco.repo.security.sync.ChainingUserRegistrySynchronizer] Failed initial synchronize with user registries
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'authenticationComponent' defined in file [C:\Alfresco\tomcat\shared\classes\alfresco\extension\subsystems\Authentication\ldap\ldap1\..\common-ldap-context.xml]: Cannot resolve reference to bean 'userRegistry' while setting bean property 'ldapNameResolver'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRegistry' defined in file [C:\Alfresco\tomcat\shared\classes\alfresco\extension\subsystems\Authentication\ldap\ldap1\..\common-ldap-context.xml]: Initialization of bean failed; nested exception is org.springframework.beans.InvalidPropertyException: Invalid property 'enableProgressEstimation' of bean class [org.alfresco.repo.security.sync.ldap.LDAPUserRegistry]: No property 'enableProgressEstimation' found
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRegistry' defined in file [C:\Alfresco\tomcat\shared\classes\alfresco\extension\subsystems\Authentication\ldap\ldap1\..\common-ldap-context.xml]: Initialization of bean failed; nested exception is org.springframework.beans.InvalidPropertyException: Invalid property 'enableProgressEstimation' of bean class [org.alfresco.repo.security.sync.ldap.LDAPUserRegistry]: No property 'enableProgressEstimation' found
Caused by: org.springframework.beans.InvalidPropertyException: Invalid property 'enableProgressEstimation' of bean class [org.alfresco.repo.security.sync.ldap.LDAPUserRegistry]: No property 'enableProgressEstimation' found
   at org.springframework.beans.BeanWrapperImpl.convertForProperty(BeanWrapperImpl.java:376)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1112)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:862)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:423)
   at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249)
   at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
   at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:267)
   at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:110)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1100)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:862)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:423)
   at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249)
   at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
   at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:291)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
   at org.alfresco.repo.management.subsystems.ChildApplicationContextFactory.start(ChildApplicationContextFactory.java:460)
   at org.alfresco.repo.management.subsystems.ChildApplicationContextFactory.getApplicationContext(ChildApplicationContextFactory.java:514)
   at org.alfresco.repo.management.subsystems.DefaultChildApplicationContextManager.getApplicationContext(DefaultChildApplicationContextManager.java:236)
   at org.alfresco.repo.security.sync.ChainingUserRegistrySynchronizer.synchronize(ChainingUserRegistrySynchronizer.java:246)
   at org.alfresco.repo.security.sync.ChainingUserRegistrySynchronizer$1$1.execute(ChainingUserRegistrySynchronizer.java:916)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:326)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:233)
   at org.alfresco.repo.security.sync.ChainingUserRegistrySynchronizer$1.doWork(ChainingUserRegistrySynchronizer.java:908)
   at org.alfresco.repo.security.authentication.AuthenticationUtil.runAs(AuthenticationUtil.java:503)
   at org.alfresco.repo.security.sync.ChainingUserRegistrySynchronizer.onBootstrap(ChainingUserRegistrySynchronizer.java:904)
   at org.alfresco.util.AbstractLifecycleBean.onApplicationEvent(AbstractLifecycleBean.java:62)
   at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:77)
   at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
   at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:75)
   at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:246)
   at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:617)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:355)
   at org.alfresco.repo.management.subsystems.ChildApplicationContextFactory.start(ChildApplicationContextFactory.java:460)
   at org.alfresco.repo.management.subsystems.AbstractPropertyBackedBean.onApplicationEvent(AbstractPropertyBackedBean.java:276)
   at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:77)
   at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
   at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:75)
   at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:246)
   at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:617)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:355)
   at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
   at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:189)
   at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
   at org.alfresco.web.app.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:69)
   at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
   at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
   at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
   at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
   at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
   at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:627)
   at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
   at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
   at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
   at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
   at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
   at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
   at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
   at org.apache.catalina.core.StandardService.start(StandardService.java:516)
   at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
   at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
   at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Pourtant le fichier de propriété est bien chargé.
16:23:05,724 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from file [C:\Alfresco\tomcat\shared\classes\alfresco\extension\subsystems\Authentication\ldap\ldap1\ldap-authentication.properties]

Je suis largué, pas moyen de passer sur LDAP.
eweller
Member II

Re: Synchronisation LDAP

En reponse a ton post ci-dessus : je n'ai pas vérifié l'install a partir d'un executable, j'ai installé initialement la 3.2 puis patché avec les Nightbuild les applications Alfresco, Share, Mobile et Studio….et je ne reproduit ton erreur - Sorry

Sinon, deux autres obstacles au LDAP : incompatibilité CIFS…meme si on se drappe dans les vertus de la Normalisation et que l'on invoque l'écart du MD4, de toute facon au final le service n'est pas rendu…et des regressions entre les users LDAP et non LDAP sur la partie Share (my Calendar et my sites)…qui appellent encore quelques heures de travail avec des incertitudes de résultat. :wink:

Aussi l'archi va évoluer comme suit :
1 - on ne demande plus a Alfresco de piloter par ses extensions LDAP (trop capricieuses), il va passer en Passthru (donc pas faire grand chose) vers un Samba
2 - un Samba qui acceuille les requetes d'authentification Alfresco, lui serait censé accepté les deux hachages MD4 et MD5
3 - ledit Samba invoque lui meme un LDAP OpenLdap qui détient les users uniquement Alfresco
4 - l'OpenLdap est configuré avec un overlay de type "Chain" pour chainer l'authentification, vers le LDAP Domino pour les utilisateurs commun messagerie+Alfresco

Je tiens informé de la suite et si success je publie les modes opératoires….mais pas les argumentaires aupres des MOA qui commencent a avoir du mal a comprendre que les choses soient si compliquées…..dont acte et a retenir pour les prochaines expériences
pilate
Member II

Re: Synchronisation LDAP

Ok bon courage merci pour l'info. Et il sera possible de modifier les données LDAP via Samba ?