Utilisation des services de noms et d'annuaire Oracle® Solaris 11.2 : LDAP

Quitter la vue de l'impression

Mis à jour : Juillet 2014
 
 

Description des SSD

L'attribut serviceSearchDescriptor définit où et comment un client de service de noms LDAP doit rechercher des informations pour un service particulier. servicesearchdescriptor contient le nom d'un service, suivi d'un ou plusieurs triples base-étendue-filtre séparés par des points-virgules. Ces triples sont utilisés pour définir des recherches uniquement pour le service spécifié et sont recherchés dans l'ordre. Si plusieurs filtres basés sur l'étendue sont spécifiés pour un service donné, lorsque ce service recherche une entrée particulière, il recherche dans chaque base ayant l'étendue et le filtre spécifiés.


Remarque -  L'emplacement par défaut n'est pas inclus dans la recherche d'un service (base de données) à l'aide d'un SSD sauf s'il est inclus dans le SSD. Un comportement imprévisible se produira si plusieurs SSD sont fournis pour un service.

Dans l'exemple suivant, le client du service de noms LDAP effectue une recherche à un niveau dans ou=west,dc=example,dc=com suivie d'une recherche à un niveau dans ou=east,dc=example,dc=com pour le service passwd. Pour rechercher les données passwd d'un utilisateur username, le filtre LDAP par défaut (&(objectClass=posixAccount)(uid=username)) est appliqué pour chaque BaseDN.

serviceSearchDescriptor: passwd:ou=west,dc=example,dc=com;ou=east,
dc=example,dc=com 

Dans l'exemple suivant, le client du service de noms LDAP doit effectuer une recherche de sous-arborescence dans ou=west,dc=example,dc=com pour le service passwd. Pour rechercher les données passwd pour l'utilisateur username, la recherche dans la sous-arborescence ou=west,dc=example,dc=com s'effectuera à l'aide du filtre LDAP (&(fulltimeEmployee=TRUE)(uid=username)).

serviceSearchDescriptor: passwd:ou=west,dc=example,
dc=com?sub?fulltimeEmployee=TRUE

Vous pouvez également associer plusieurs conteneurs à un type de service spécifique. Dans l'exemple ci-après, le descripteur de recherche de service indique la recherche d'entrées de mot de passe dans trois conteneurs.

ou=myuser,dc=example,dc=com
ou=newuser,dc=example,dc=com
ou=extuser,dc=example,dc=com

Notez qu'une virgule (,) en fin de ligne dans l'exemple implique que la base defaultSearchBase est ajoutée à la base relative dans le SSD.

defaultSearchBase: dc=example,dc=com
serviceSearchDescriptor: \
passwd:ou=myuser,;ou=newuser,;ou=extuser,dc=example,dc=com

Attributs attributeMap

Le service de noms LDAP autorise le remappage d'un ou de plusieurs noms d'attributs pour n'importe lequel de ses services Si vous mappez un attribut, vous devez vous assurer que l'attribut a la même signification et la même syntaxe que l'attribut d'origine. Notez que le mappage de l'attribut userPassword peut causer des problèmes.

Il peut s'avérer utile d'utiliser des mappages de schéma dans les situations où vous souhaitez mapper des attributs dans un serveur d'annuaire existant. Si vous avez des noms d'utilisateur dont seule la casse diffère, vous devez mapper l'attribut uid, qui ignore la casse, sur un attribut qui n'ignore pas la casse.

Le format de cet attribut est service:attribute-name=mapped-attribute-name.

Si vous souhaitez mapper plusieurs attributs pour un service donné, vous pouvez définir plusieurs attributs attributeMap.

Dans l'exemple suivant, les attributs employeeName et home seront utilisés à chaque fois que les attributs uid et homeDirectory sont utilisés pour le service passwd.

attributeMap: passwd:uid=employeeName
attributeMap: passwd:homeDirectory=home

Notez que vous pouvez mapper l'attribut passwd du service gecos avec plusieurs attributs, comme illustré dans l'exemple suivant :

attributeMap: gecos=cn sn title

Dans cet exemple les valeurs gecos sont mappées avec une liste des valeurs d'attributs cn, sn et title séparées par des espaces.

Attribut objectclassMap

Le service de noms LDAP permet aux classes d'objet d'être remappées pour l'un de ses services. Si vous souhaitez mapper plusieurs classes d'objet pour un service donné, vous pouvez définir plusieurs attributs objectclassMap. Dans l'exemple suivant, la classe d'objet myUnixAccount est utilisée à chaque fois que la classe d'objet posixAccount est utilisée :

objectclassMap: passwd:posixAccount=myUnixAccount