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

Quitter la vue de l'impression

Mis à jour : Juillet 2014
 
 

Exemples de cartes personnalisées

Les exemples de cette section illustrent la façon dont vous pouvez personnaliser les cartes. Utilisez l'éditeur de texte de votre choix pour modifier le fichier /var/yp/NISLDAPmapping selon vos besoins. Pour plus d'informations sur la syntaxe et les attributs de fichier, reportez-vous à la page de manuel NISLDAPmapping(4) et aux informations relatives aux services de noms LDAP dans le Chapter 1, Introduction au service de noms LDAP.

Exemple 8-1  Déplacement des entrées d'hôte

Cet exemple montre comment déplacer les entrées d'hôte de l'emplacement par défaut à un autre emplacement (non standard) dans l'arborescence DIT.

Remplacez l'attribut nisLDAPobjectDN dans le fichier NISLDAPmapping par le nouveau DN (nom distinctif) LDAP de base. Pour cet exemple, la structure interne des objets LDAP n'est pas modifiée, de sorte que les entrées objectClass restent inchangées.

Remplacez :

nisLDAPobjectDN hosts: \
ou=hosts,?one?, \
objectClass=device, \
objectClass=ipHost

par :

nisLDAPobjectDN hosts: \
ou=newHosts,?one?, \
objectClass=device, \
objectClass=ipHost

Suite à cette modification, les entrées sont mappées sous

   dn: ou=newHosts, dom=domain1, dc=sun, dc=com

et non sous

   dn: ou=hosts, dom=domain1, dc=sun, dc=com.

Exemple 8-2  Implémentation d'une carte personnalisée

Cet exemple montre comment implémenter une carte personnalisée.

Une carte hypothétique, servdate.bynumber, contient des informations sur les dates de service pour les systèmes. Cette carte est indexée par le numéro de série de la machine qui, dans cet exemple, est 123. Chaque entrée se compose du nom du propriétaire de la machine, d'un signe deux-points et d'une liste de dates de service séparées par des virgules, par exemple, John Smith:1/3/2001,4/5/2003.

L'ancienne structure de la carte doit être mappée sur les entrées LDAP de la forme suivante :

dn: number=123,ou=servdates,dc=... \
number: 123 \
userName: John Smith \
date: 1/3/2001 \
date: 4/5/2003 \
.
.
.
objectClass: servDates

L'examen du fichier NISLDAPmapping permet de voir que le mappage le plus proche du modèle requis est group. Les mappages personnalisés peuvent être modélisés sur le mappage group. Etant donné qu'il n'existe qu'une seule carte, aucun attribut nisLDAPdatabaseIdMapping n'est requis. Les attributs à ajouter à NISLDAPmapping sont les suivants :

nisLDAPentryTtl servdate.bynumber:1800:5400:3600

nisLDAPnameFields servdate.bynumber: \
("%s:%s", uname, dates)

nisLDAPobjectDN servdate.bynumber: \
ou=servdates, ?one? \
objectClass=servDates:

nisLDAPattributeFromField servdate.bynumber: \
dn=("number=%s,", rf_key), \
number=rf_key, \
userName=uname, \
(date)=(dates, ",")

nisLDAPfieldFromAttribute servdate.bynumber: \
rf_key=number, \
uname=userName, \
dates=("%s,", (date), ",")