cancel
Showing results for 
Search instead for 
Did you mean: 

LDAP : impossible de voir les groupes

apx25_
Champ on-the-rise
Champ on-the-rise

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>
5 REPLIES 5

sylecomte_Lecom
Champ in-the-making
Champ in-the-making

Toujours embêter, ou c'est trop tard ?

apx25_
Champ on-the-rise
Champ on-the-rise

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

Bonjour,

Bon, il n'y a pas que ça...

Thierry_Martins
Star Collaborator
Star Collaborator

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

Getting started

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.