Comprendre le fonctionnement de LDAP avec eDirectory

Cette section décrit les éléments suivants :


Connexion à eDirectory à partir de LDAP

Tous les clients LDAP se relient (se connectent) à Novell eDirectory en tant qu'un des types d'utilisateur suivants :

Le type de liaison avec lequel l'utilisateur s'authentifie détermine le contenu auquel le client LDAP peut accéder. Les clients LDAP accèdent à un annuaire en élaborant une requête qu'ils lui envoient. Lorsqu'un client LDAP envoie une requête via les services LDAP pour eDirectory, eDirectory traite la requête des seuls attributs pour lesquels le client LDAP dispose de droits appropriés.

Si le client LDAP fait par exemple porter sa requête sur une valeur d'attribut (nécessitant le droit Lire) mais que l'utilisateur dispose uniquement du droit Comparer sur cet attribut, la requête est rejetée.

Les restrictions de login et de mot de passe standard s'appliquent toujours. Toutefois, les restrictions sont tributaires de l'endroit où LDAP tourne. Les restrictions de temps et d'adresse sont respectées, mais les restrictions d'adresse sont tributaires de l'endroit où le login à eDirectory a été effectué ; dans ce cas, il s'agit du serveur LDAP.


Connexion en tant qu'utilisateur [Public]

Une liaison anonyme est une connexion qui ne contient ni de nom d'utilisateur ni de mot de passe. Si un client LDAP sans nom ni mot de passe se connecte aux services LDAP pour eDirectory et que le service n'est pas configuré pour utiliser un utilisateur proxy, l'utilisateur est authentifié auprès de eDirectory en tant qu'utilisateur [Public].

L'utilisateur [Public] est un utilisateur eDirectory non authentifié. Par défaut, l'utilisateur [Public] dispose du droit Parcourir sur les objets de l'arborescence eDirectory. Le droit Parcourir accordé par défaut à l'utilisateur [Public] permet de naviguer dans les objets eDirectory, mais verrouille l'accès à la majorité des attributs d'objets.

Les droits [Public] par défaut sont généralement trop limités pour la plupart des clients LDAP. Bien que vous puissiez modifier les droits [Public], leur modification confère ces droits à tous les utilisateurs. C'est la raison pour laquelle il est recommandé d'utiliser plutôt une liaison anonyme d'utilisateur proxy. Pour plus d'informations, reportez-vous à Connexion en tant qu'utilisateur proxy.

Pour conférer à un utilisateur [Public] un accès aux attributs des objets, vous devez transformer l'utilisateur [Public] en ayant droit du ou des conteneurs concernés, puis lui assigner les droits appropriés sur les objets et les attributs.


Connexion en tant qu'utilisateur proxy

Une liaison anonyme d'utilisateur proxy est une connexion anonyme liée à un nom d'utilisateur eDirectory. Si un client LDAP se lie anonymement aux services LDAP pour eDirectory et que le protocole est configuré pour utiliser un utilisateur proxy, l'utilisateur est authentifié auprès de eDirectory en tant qu'utilisateur proxy. Le nom est alors configuré à la fois dans les services LDAP pour et dans eDirectory.

En règle générale, la liaison anonyme se fait sur le port 389 dans les services LDAP. Vous pouvez cependant configurer manuellement d'autres ports lors de l'installation.

Les principaux concepts associés aux liens anonymes d'utilisateurs proxy sont présentés ci-dessous :

Pour accorder à l'utilisateur proxy des droits sur les propriétés sélectionnées :

  1. Dans Novell iManager, cliquez sur le bouton Rôles et tâches Roles and Tasks button.

  2. Cliquez sur Droits > Modifier les ayants droit.

  3. Entrez le nom et le contexte du conteneur de niveau supérieur sur lequel l'utilisateur proxy a des droits ou cliquez sur Search button pour accéder au conteneur concerné, puis sur OK.

  4. Dans l'écran Modifier les ayants droit, cliquez sur Ajouter un ayant droit.

  5. Recherchez l'objet de l'utilisateur proxy et sélectionnez-le, puis cliquez sur OK.

  6. Cliquez sur Droits assignés, à gauche de l'utilisateur proxy que vous venez d'ajouter.

  7. Cochez les cases Tous les droits d'attribut et Droits d'entrée, puis cliquez sur Supprimer la propriété.

  8. Cliquez sur Ajouter une propriété, puis cochez la case Afficher toutes les propriétés dans le schéma.

  9. Sélectionnez un droit héritable pour l'utilisateur proxy, tel que Boîte postale (dans la section de la liste en minuscules) ou Titre, puis cliquez sur OK.

    Pour ajouter d'autres droits héritables, répétez les étapes 9 et 10.

  10. Cliquez sur Terminé, puis cliquez sur OK.

Pour mettre en oeuvre les liaisons anonymes d'utilisateur proxy, vous devez créer l'objet Utilisateur proxy dans eDirectory et lui assigner les droits appropriés. Assignez les droits Lire et Rechercher de l'utilisateur proxy sur tous les objets et attributs de chaque sous-arborescence dans laquelle un accès est requis. Vous devez également activer l'utilisateur proxy dans les services LDAP pour eDirectory en spécifiant le même nom d'utilisateur proxy.

  1. Dans Novell iManager, cliquez sur le bouton Rôles et tâches Roles and Tasks button.

  2. Cliquez sur LDAP > Présentation LDAP.

  3. Cliquez sur le nom d'un objet Groupe LDAP à configurer.

  4. Entrez le nom et le contexte d'un objet Utilisateur eDirectory dans le champ Utilisateur proxy.

  5. Cliquez sur Appliquer, puis sur OK.


Utilisation de l'utilitaire ldapconfig sur UNIX

Par exemple, vous trouverez des informations sur la manière dont le serveur LDAP traite les renvois LDAP dans Utilisation de renvois lors d'une recherche pour LDAP.

  1. À l'invite du système, entrez la commande suivante :

    ldapconfig -s "LDAP:otherReferralUsage=1"

  2. Saisissez le nom distinctif complet de l'utilisateur pour eDirectory (FDN utilisateur) et le mot de passe de l'utilisateur.


Connexion en tant qu'utilisateur NDS ou eDirectory

Une liaison d'utilisateur eDirectory est une connexion établie par un client LDAP à l'aide d'un nom d'utilisateur eDirectory complet et d'un mot de passe. La liaison d'utilisateur eDirectory est authentifiée dans eDirectory et le client LDAP a accès à toutes les informations que l'utilisateur eDirectory est autorisé à consulter.

Les concepts clés des liaisons d'utilisateur eDirectory sont les suivants :


Assignation de droits eDirectory aux clients LDAP

  1. Déterminez le type de nom d'utilisateur que les clients LDAP vont utiliser pour accéder à eDirectory.

    Pour plus d'informations, reportez-vous à Connexion à eDirectory à partir de LDAP

  2. Si les utilisateurs utilisent un nom d'utilisateur proxy ou plusieurs noms d'utilisateur eDirectory pour accéder aux services LDAP, utilisez iManager pour créer ces noms d'utilisateur dans eDirectory ou via les services LDAP.

  3. Assignez les droits eDirectory correspondants aux noms d'utilisateur que les clients LDAP vont utiliser.

Les droits par défaut que la plupart des utilisateurs reçoivent comprennent des droits limités sur l'objet de l'utilisateur. Pour accorder l'accès à d'autres objets et à leurs attributs, vous devez changer les droits assignés dans eDirectory.

Lorsqu'un client LDAP demande l'accès à un objet et à un attribut eDirectory, eDirectory accepte ou refuse cette demande en fonction de l'identité eDirectory du client LDAP. Cette identité est définie à l'établissement de la liaison.


Assignations de classes et d'attributs

Une classe est un type d'objet dans un annuaire, par exemple un utilisateur, un serveur ou un groupe. Un attribut correspond à un élément d'annuaire qui définit des informations supplémentaires portant sur un objet spécifique. Par exemple, un objet Utilisateur peut avoir pour attribut un nom de famille ou un numéro de téléphone.

Un schéma est un ensemble de règles qui définit les classes et attributs autorisés dans un annuaire, ainsi que la structure de l'annuaire (des relations peuvent exister entre les classes). Étant donné que les schémas des annuaires LDAP et eDirectory sont parfois différents, l'assignation de classes et d'attributs LDAP aux objets et aux attributs eDirectory correspondants peut s'avérer nécessaire. Ces assignations définissent la conversion des noms du schéma LDAP au schéma eDirectory.

Les services LDAP pour eDirectory proposent des assignations par défaut. Dans de nombreux cas, la correspondance entre les classes et attributs LDAP et les types et propriétés d'objets eDirectory est logique et intuitive. Toutefois, en fonction de vos besoins en matière de mise en oeuvre, vous pouvez reconfigurer les assignations de classes et d'attributs.

Dans la plupart des cas, l'assignation d'une classe LDAP à un type d'objet eDirectory correspond à une relation de type un à un. Cependant, le schéma LDAP prend en charge les noms d'alias, tels que CN et commonName, qui font référence à un même attribut.


Assignation des attributs du groupe LDAP

La configuration par défaut des services LDAP pour eDirectory comprend un ensemble prédéfini d'assignations de classes et d'attributs. Celles-ci assignent un sous-ensemble d'attributs LDAP à un sous-ensemble d'attributs eDirectory. Si un attribut n'est pas encore assigné dans la configuration par défaut, une assignation auto-générée est assignée à l'attribut. De même, si le nom de schéma est un nom LDAP valide ne comportant ni espace ni deux points, aucune assignation n'est nécessaire. Examinez l'assignation de classes et d'attributs et reconfigurez-la si nécessaire.

  1. Dans Novell iManager, cliquez sur le bouton Rôles et tâches Roles and Tasks button.

  2. Cliquez sur LDAP > Présentation LDAP > Afficher les groupes LDAP.

  3. Cliquez sur un objet Groupe LDAP, puis sur Assignation d'attribut.

  4. Ajoutez, supprimez ou modifiez les attributs de votre choix.

    Étant donné que certains attributs LDAP peuvent disposer de noms de remplacement (comme CN et commonName), vous devrez peut-être assigner plusieurs attributs LDAP à un nom d'attribut eDirectory correspondant. Lorsque les services LDAP pour eDirectory renvoient les informations sur les attributs LDAP, ils renvoient la valeur du premier attribut correspondant repéré dans la liste.

    Si vous assignez plusieurs attributs LDAP à un seul attribut eDirectory, vous devez réorganiser la liste afin de préciser l'attribut prioritaire, car l'ordre est important.

  5. Cliquez sur Appliquer, puis sur OK.


Assignation des classes du groupe LDAP

Lorsqu'un client LDAP demande des informations sur les classes LDAP auprès du serveur LDAP, le serveur renvoie les informations sur les classes eDirectory correspondantes. La configuration par défaut des services LDAP pour eDirectory comprend un ensemble prédéfini d'assignations de classes et d'attributs.

  1. Dans Novell iManager, cliquez sur le bouton Rôles et tâches Roles and Tasks button.

  2. Cliquez sur LDAP > Présentation LDAP.

  3. Cliquez sur un objet Groupe LDAP, puis sur Assignation de classe.

  4. Ajoutez, supprimez ou modifiez les classes de votre choix.

    La configuration par défaut des services LDAP pour eDirectory comprend un ensemble prédéfini d'assignations de classes et d'attributs. Ces assignations assignent un sous-ensemble de classes et d'attributs LDAP à un sous-ensemble de classes et d'attributs eDirectory. Si un attribut ou une classe n'est pas encore assigné dans la configuration par défaut, une assignation auto-générée est assignée à l'attribut ou à la classe.

    De même, si le nom de schéma est un nom LDAP valide ne comportant ni espace ni deux points, aucune assignation n'est nécessaire. Examinez l'assignation de classes et d'attributs et reconfigurez-la si nécessaire.

  5. Cliquez sur Appliquer, puis sur OK.


Assignation de classes et d'attributs LDAP

Étant donné que les schémas des annuaires LDAP et eDirectory sont différents, l'assignation de classes et d'attributs LDAP aux objets et aux attributs eDirectory correspondants s'avère nécessaire. Ces assignations définissent la conversion des noms du schéma LDAP au schéma eDirectory.

Aucune assignation de schéma LDAP n'est requise pour une entrée de schéma si le nom est un nom de schéma LDAP valide. Dans LDAP, les seuls caractères autorisés dans un nom de schéma sont les caractères alphanumériques et les tirets (-). Le nom de schéma LDAP ne doit pas comporter d'espace.

Pour garantir le résultat d'une recherche par ID d'objet après une extension de schéma autre que LDAP, comme pour les fichiers .sch, vous devez actualiser la configuration du serveur LDAP si le schéma s'étend en dehors de LDAP.


Assignations de plusieurs éléments pour un seul

Pour prendre en charge LDAP depuis eDirectory, les services LDAP utilisent des assignations au niveau du protocole (plutôt qu'au niveau des services Annuaire) pour effectuer la conversion entre les attributs et les classes LDAP et eDirectory. C'est pourquoi deux classes ou attributs LDAP peuvent être assignés à la même classe ou au même attribut eDirectory.

Par exemple, si vous créez un Cn via LDAP, puis recherchez CommonName=Value, vous pouvez obtenir un nom commun susceptible d'avoir la même valeur d'attribut que Cn.

Si vous demandez tous les attributs, vous obtenez le premier attribut de la liste des assignations correspondant à cette classe. Si vous demandez un attribut d'après son nom, vous obtenez le nom correct.


Assignations de plusieurs classes à une seule

Nom de classe LDAP Nom de classe eDirectory

alias
aliasObject

Alias

groupOfNames
groupOfUniqueNames
group

Groupe

mailGroup
rfc822mailgroup

NSCP:mailGroup1


Assignations de plusieurs attributs à un seul

Nom d'attribut LDAP Nom d'attribut eDirectory

c
countryName

C

cn
commonName

CN

uid
userId

uniqueID

description
multiLineDescription

Description

l
localityname

L

member
uniqueMember

Membre

o
organizationname

O

ou
organizationalUnitName

OU

sn
surname

Surname

st
stateOrProvinceName

S

certificateRevocationList;binary
certificateRevocationList

certificateRevocationList

authorityRevocationList;binary
authorityRevocationList

authorityRevocationList

deltaRevocationList;binary
deltaRevocationList

deltaRevocationList

cACertificate;binary
cACertificate

cACertificate

crossCertificatePair;binary
crossCertificatePair

crossCertificatePair

userCertificate;binary
userCertificate

userCertificate

REMARQUE :  les attributs qui comportent " ;binary " sont relatifs à la sécurité. Ils se trouvent dans la table d'assignation, si votre application a besoin du nom récupéré avec la valeur " ;binary ". Sinon, vous pouvez modifier l'ordre des assignations.


Autorisation d'une sortie de schéma non standard

eDirectory comporte un commutateur de mode de compatibilité autorisant une sortie de schéma non standard que les clients ADSI et les anciens clients Netscape peuvent lire. Pour le mettre en œuvre, il convient de définir un attribut dans l'objet Serveur LDAP. Le nom de l'attribut concerné est nonStdClientSchemaCompatMode. L'objet Serveur LDAP est généralement créé dans le même conteneur que l'objet Serveur.

La sortie non standard n'est pas conforme aux normes IETF actuelles de LDAP, mais elle fonctionne avec la version actuelle des clients ADSI et les anciens clients Netscape.

Dans le format de sortie non standard :

L'OID, ou identificateur d'objet, est une chaîne numérique d'octets nécessaire pour ajouter votre propre attribut ou classe d'objets à un serveur LDAP.

Pour autoriser la sortie de schéma non standard, procédez comme suit :

  1. Dans Novell iManager, cliquez sur le bouton Rôles et tâches Roles and Tasks button.

  2. Cliquez sur LDAP > Présentation LDAP.

  3. Cliquez sur Afficher les serveurs LDAP, puis sur un objet Serveur LDAP.

  4. Cliquez sur Recherches, puis sur Autoriser la sortie de schéma pour les anciens clients ADSI et Netscape.

    la sortie non standard n'est pas conforme aux normes IETF actuelles définies pour LDAP, mais elle fonctionne avec les clients ADSI actuels et les anciens clients Netscape.

  5. Cliquez sur Appliquer, puis sur Informations et sur Rafraîchir.


Différences de syntaxe

Les services LDAP et eDirectory n'utilisent pas la même syntaxe. Certaines différences importantes sont indiquées ci-dessous :


Virgules

LDAP utilise la virgule et non le point comme séparateur. Exemple de nom distinctif (ou complet) dans eDirectory :

CN=JANEB.OU=MKTG.O=EMA

Le même nom distinctif avec la syntaxe LDAP :

CN=JANEB,OU=MKTG,O=EMA

Autres exemples de noms distinctifs LDAP :

CN=Bill Williams,OU=PR,O=Bella Notte Corp
CN=Susan Jones,OU=Humanities,O=University College London,C=GB


Noms avec type

eDirectory utilise aussi bien les noms sans type (.JOHN.MARKETING.ABCCORP) que les noms avec type (CN=JOHN.OU=MARKETING.O=ABCCORP). LDAP utilise uniquement des noms avec type et la virgule comme délimiteur (CN=JOHN,OU=MARKETING,O=ABCCORP).


Caractère d'échappement

La barre oblique inverse (\) est utilisée comme caractère d'échappement dans les noms distinctifs LDAP. Si vous utilisez le signe plus (+) ou la virgule (,), vous pouvez utiliser une barre oblique inverse pour indiquer qu'ils font partie d'une séquence d'échappement.

Par exemple :

CN=praliné\+crème,OU=parfums,O=MFG (CN correspond à praliné+crème)

CN=DCardinal,O=Lionel\,Thomas et Catherine,C=US (O correspond à Lionel, Thomas et Catherine)

Pour plus d'informations, reportez-vous à la norme RFC 232 d'IETF (Internet Engineering Task Force).


Attributs de dénomination multiples

Vous pouvez définir des objets en utilisant plusieurs attributs de dénomination dans le schéma. Dans les services LDAP comme dans eDirectory, l'objet Utilisateur en possède deux : CN et UID. Le signe plus (+) sépare les attributs de dénomination dans le nom distinctif. Si les attributs ne sont pas explicitement libellés, le schéma détermine la chaîne associée à chaque attribut (la première serait CN et la seconde UID pour eDirectory et LDAP). Vous pouvez les réorganiser en un nom distinctif en libellant manuellement chaque portion.

Par exemple, voici deux noms distinctifs relatifs :

Dupont (CN correspond à Dupont CN=Dupont)

Dupont+Lise (CN correspond à Dupont et OU correspond à Lise CN=Dupont UID=Lise)

Les deux noms distinctifs relatifs (Dupont et Dupont+Lise) peuvent exister dans le même contexte car ils doivent être référencés par deux noms distinctifs relatifs très différents.


Contrôles et extensions LDAP Novell pris en charge

Le protocole LDAP 3 permet aux clients et serveurs LDAP d'utiliser des contrôles et des extensions pour étendre une opération LDAP. Les contrôles et les extensions permettent d'indiquer des informations supplémentaires dans une requête ou une réponse. Chaque opération étendue est identifiée par un OID, ou identificateur d'objet, une chaîne numérique d'octets nécessaire pour ajouter votre propre attribut ou classe d'objet à un serveur LDAP. Les clients LDAP peuvent envoyer des requêtes d'opération étendue en indiquant l'OID de l'opération étendue qui doit être effectuée, ainsi que les données qui lui sont propres. Lorsque le serveur LDAP reçoit la requête, il effectue l'opération étendue et envoie au client une réponse contenant un OID et des données supplémentaires.

Par exemple, un client peut inclure un contrôle qui indique un tri avec la requête de recherche qu'il envoie au serveur. Lorsque le serveur reçoit la requête de recherche, il trie les résultats de la recherche avant de les renvoyer au client. Les serveurs peuvent également envoyer des contrôles aux clients. Par exemple, un serveur peut envoyer un contrôle avec la requête d'authentification qui informe le client de l'expiration du mot de passe.

Par défaut, le serveur LDAP eDirectory charge toutes les extensions système, ainsi que les extensions et les contrôles facultatifs sélectionnés lors du démarrage du serveur LDAP. L'attribut extensionInfo de l'objet Serveur LDAP pour les extensions facultatives permet à l'administrateur système de sélectionner ou de désélectionner les extensions et les contrôles facultatifs.

Pour que le protocole LDAP 3 puisse activer les opérations étendues, les serveurs doivent fournir la liste des contrôles et des extensions pris en charge dans les attributs supportedControl et supportedExtension de l'entrée rootDSE. L'entrée rootDSE (entrée propre au DSA [Agent du système Annuaire]) est située à la racine de l'arborescence qui contient les informations de l'Annuaire (DIT). Pour plus d'informations, reportez-vous à Obtention d'informations sur le serveur LDAP.

Pour obtenir la liste des contrôles et extensions LDAP pris en charge, reportez-vous à LDAP Controls (Contrôles LDAP) et à LDAP Extensions (Extensions LDAP) dans le manuel LDAP and NDS Integration Guide (Guide d'intégration LDAP et NDS).