Recherche
...
| Bloc de code |
|---|
<?xml version="1.0"?>
<component name="org.esup.ecm.directory.ldap.storage.users">
<require>org.nuxeo.ecm.directory.ldap.LDAPDirectoryFactory</require>
<require>org.nuxeo.ecm.directory.sql.storage</require>
<!-- configuration de la connexion : definition du serveur -->
<extension target="org.nuxeo.ecm.directory.ldap.LDAPDirectoryFactory" point="servers">
<server name="default">
<!-- url du serveur -->
<ldapUrl>ldap://ldap.my-univ.fr:389</ldapUrl>
<!-- replicas eventuel pour tolerance de panne -->
<!-- <ldapUrl>ldap://ldap2?my-univ.fr:389</ldapUrl> -->
<!--utilisateur et mot de passe en cas de bind non anonyme -->
<bindDn>cn=binduser,ou=admin,dc=my-univ,dc=fr</bindDn>
<bindPassword>verySecret</bindPassword>
</server>
</extension>
<extension target="org.nuxeo.ecm.directory.ldap.LDAPDirectoryFactory" point="directories">
<!-- configuration du repertoire utilisateur, modifications par rapport aux versions 5.4.1 et anterieures de nuxeo -->
<directory name="userLdapDirectory">
<!-- on s'appuie sur la connexion qu'on vient de définir -->
<server>default</server>
<!-- schema nuxeo utilisé : par defaut user -->
<schema>user</schema>
<!-- identifiant/mdp des personnes (dans nuxeo) -->
<idField>username</idField>
<passwordField>password</passwordField>
<!-- branche ldap dans laquelle sont situes les utilisateurs -->
<searchBaseDn>ou=people,dc=my-univ,dc=fr</searchBaseDn>
<!-- ObjectClass a rechercher => ajouté au filtre de recherche -->
<searchClass>person</searchClass>
<!-- filtre de recherche personnalisé (ajouté au filtre par défaut) -->
<searchFilter>(&(!(eduPersonAffiliation=affiliate))(status=valide))</searchFilter>
<!-- Portee de la recherche -->
<searchScope>onelevel</searchScope>
<!-- Type de recherches possibles :
subinitial : toto => recherche sur toto*
subfinal : toto => recherche sur *toto
subany : toto => recherche sur *toto*
Par defaut la recherche est en subinitial -->
<substringMatchType>subinitial</substringMatchType>
<!-- Si False avec un binddn ayant des acces en ecriture sur l'annuaire, proposera
d'ajouter des utilisateurs dans l'annuaire -->
<readOnly>true</readOnly>
<!-- cache timeout en secondes -->
<cacheTimeout>3600</cacheTimeout>
<!-- nombre maximal d'entrees en cache -->
<cacheMaxSize>1000</cacheMaxSize>
<!-- utilisé pour éventuellement creer des utilisateurs depuis nuxeo ... -->
<creationBaseDn>ou=people,dc=my-univ,dc=fr</creationBaseDn>
<creationClass>top</creationClass>
<creationClass>person</creationClass>
<creationClass>organizationalPerson</creationClass>
<creationClass>inetOrgPerson</creationClass>
<rdnAttribute>uid</rdnAttribute>
<!--Mapping entre le nom des champs dans le schema user de nuxeo et les attributs de l'annuaire -->
<fieldMapping name="username">uid</fieldMapping>
<fieldMapping name="firstName">givenName</fieldMapping>
<fieldMapping name="lastName">sn</fieldMapping>
<fieldMapping name="company">supannetablissement</fieldMapping>
<fieldMapping name="email">mail</fieldMapping>
<!-- reference aux groupes, cf. default-ldap-groups-directory-bundle.xml -->
<references>
<inverseReference field="groups" directory="groupLdapDirectory" dualReferenceField="members" />
</references>
</directory>
</extension>
</component> |
| Remarque |
|---|
Afin d'accélérer les requêtes LDAP ( et donc la première connexion à Nuxeo ), il est conseillé d'utiliser directement l'administrateur pour se connecter à l'annuaire ( <bindDn> ) et non un utilisateur avec droits restreints : ceci évite d'avoir à évaluer les ACLs lors des requêtes. |
...