11-23-2012 10:45 AM
Bonjour,
Je viens de configurer les directories nécessaires pour accéder à notre annuaire LDAP à partir de nuxeo. En suivant la documentation, j'ai configuré les deux fichiers suivants (fournis ci-dessous) :
$NUXEO_HOME/nuxeo_custom/config/default-ldap-users-directory-bundle.xml
$NUXEO_HOME/nuxeo_custom/config/default-ldap-groups-directory-bundle.xml
L'authentification des utilisateurs LDAP fonctionne. L'utilisateur "adminnuxeo" déclaré dans LDAP fonctionne bien en tant qu'administrateur. La recherche d'utilisateurs à partir de Nuxeo fonctionne et suis bien les mode subinitial, subfinal ou subany selon la configuration déclarée. Par contre les groupes LDAP restent totalement invisibles de Nuxeo. Une recherche de groupes ne renvoie que la liste des groupes SQL. Les groupes LDAP sont des groupes statiques.(ObjectClass: groupOfNames, supannGroupe, top - Attributs : cn, member, description)
J'ai beau tourner mes fichiers de configuration dans tous les sens, rien n'y fait :-[
Quelqu'un aurait-il une idée de l'erreur que je commets ?
D'avance merci pour votre aide,
Patrice
-------------------------------------------------
$ cat default-ldap-users-directory-bundle.xml
<?xml version="1.0"?>
<component name="org.masociete.ecm.directory.ldap.storage.users">
<require>org.nuxeo.ecm.directory.ldap.LDAPDirectoryFactory</require>
<require>org.nuxeo.ecm.directory.sql.storage</require>
<extension target="org.nuxeo.ecm.directory.ldap.LDAPDirectoryFactory" point="servers">
<server name="default">
<ldapUrl>ldaps://monserveur1:636</ldapUrl>
<ldapUrl>ldaps://monserveur2:636</ldapUrl>
<bindDn>cn=???,ou=???,dc=???,dc=fr</bindDn>
<bindPassword>???</bindPassword>
</server>
</extension>
<extension target="org.nuxeo.ecm.directory.ldap.LDAPDirectoryFactory" point="directories">
<directory name="userLdapDirectory">
<server>default</server>
<schema>user</schema>
<idField>username</idField>
<passwordField>password</passwordField>
<searchBaseDn>ou=???,dc=???,dc=fr</searchBaseDn>
<searchClass>person</searchClass>
<searchScope>onelevel</searchScope>
<substringMatchType>subinitial</substringMatchType>
<readOnly>true</readOnly>
<cacheTimeout>3600</cacheTimeout>
<cacheMaxSize>2000</cacheMaxSize>
<querySizeLimit>2000</querySizeLimit>
<queryTimeLimit>0</queryTimeLimit>
<creationClass>top</creationClass>
<creationClass>person</creationClass>
<creationClass>organizationalPerson</creationClass>
<creationClass>inetOrgPerson</creationClass>
<rdnAttribute>uid</rdnAttribute> -->
<fieldMapping name="username">uid</fieldMapping>
<fieldMapping name="firstName">givenName</fieldMapping>
<fieldMapping name="lastName">sn</fieldMapping>
<fieldMapping name="company">supanneEntiteAffectationPrincipale</fieldMapping>
<fieldMapping name="email">mail</fieldMapping>
<references>
<inverseReference field="groups" directory="groupLdapDirectory" dualReferenceField="members" />
</references>
</directory>
</extension>
<extension target="org.nuxeo.ecm.platform.usermanager.UserService" point="userManager">
<userManager>
<defaultAdministratorId>???</defaultAdministratorId>
<defaultGroup>members</defaultGroup>
</userManager>
</extension>
</component>
------------------------------------------------
$ cat default-ldap-groups-directory-bundle.xml
<?xml version="1.0"?>
<component name="org.masociete.ecm.directory.ldap.storage.groups">
<require>org.nuxeo.ecm.directory.ldap.LDAPDirectoryFactory</require>
<require>org.masociete.ecm.directory.ldap.storage.users</require>
<extension target="org.nuxeo.ecm.directory.ldap.LDAPDirectoryFactory" point="directories">
<directory name="groupLdapDirectory">
<server>default</server>
<schema>group</schema>
<idField>groupname</idField>
<searchBaseDn>ou=groups,dc=???,dc=fr</searchBaseDn>
<searchFilter>(objectClass=groupOfNames)</searchFilter>
<searchScope>subtree</searchScope>
<readOnly>true</readOnly>
<cacheTimeout>3600</cacheTimeout>
<cacheMaxSize>1000</cacheMaxSize>
<querySizeLimit>200</querySizeLimit>
<queryTimeLimit>0</queryTimeLimit>
<fieldMapping name="groupname">cn</fieldMapping>
<fieldMapping name="description">description</fieldMapping>
<references>
<ldapReference field="members" directory="userLdapDirectory"
forceDnConsistencyCheck="false"
staticAttributeId="member"
dynamicAttributeId="memberURL" />
<ldapReference field="subGroups" directory="groupLdapDirectory"
forceDnConsistencyCheck="false"
staticAttributeId="member"
dynamicAttributeId="memberURL" />
<inverseReference field="parentGroups"
directory="groupLdapDirectory" dualReferenceField="subGroups" />
</references>
</directory>
</extension>
</component>
05-07-2013 12:36 PM
Toujours embêter, ou c'est trop tard ?
05-13-2013 05:36 AM
Bonjour,
Non, ça ne fonctionne toujours pas. J'ai laissé cette affaire de côté pour l'instant, mais toute nouvelle piste serait la bienvenue.
Merci par avance,
Patrice
05-14-2013 05:32 AM
Bonjour,
05-14-2013 06:42 AM
Bon, il n'y a pas que ça...
05-15-2013 09:54 AM
bonjour,
vous n'indiquez pas que ce sont vos directories qui doivent être utilisés pour récupérer les utilisateurs et les groupes, donc le système utilise ceux par défaut (userDirectory et groupDirectory)
Pour changer cela, ajoutez la contribution correspondant à ce fichier https://github.com/nuxeo/nuxeo-services/blob/master/nuxeo-platform-directory/nuxeo-platform-director...
Cordialement Thierry
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.