Chapitre 18. Synchronisation des groupes LDAP


En tant qu'administrateur, vous pouvez utiliser les groupes pour gérer les utilisateurs, modifier leurs autorisations et améliorer la collaboration. Votre organisation a peut-être déjà créé des groupes d'utilisateurs et les a stockés dans un serveur LDAP. OpenShift Container Platform peut synchroniser ces enregistrements LDAP avec les enregistrements internes d'OpenShift Container Platform, ce qui vous permet de gérer vos groupes en un seul endroit. OpenShift Container Platform prend actuellement en charge la synchronisation des groupes avec les serveurs LDAP en utilisant trois schémas communs pour définir l'appartenance à un groupe : RFC 2307, Active Directory et Active Directory augmenté.

Pour plus d'informations sur la configuration de LDAP, voir Configuration d'un fournisseur d'identité LDAP.

Note

Vous devez disposer des privilèges cluster-admin pour synchroniser les groupes.

18.1. À propos de la configuration de la synchronisation LDAP

Avant de pouvoir exécuter la synchronisation LDAP, vous avez besoin d'un fichier de configuration de la synchronisation. Ce fichier contient les informations suivantes sur la configuration du client LDAP :

  • Configuration de la connexion à votre serveur LDAP.
  • Options de configuration de la synchronisation qui dépendent du schéma utilisé dans votre serveur LDAP.
  • Une liste définie par l'administrateur de correspondances de noms qui associe les noms de groupes de OpenShift Container Platform aux groupes de votre serveur LDAP.

Le format du fichier de configuration dépend du schéma utilisé : RFC 2307, Active Directory ou Active Directory augmenté.

Configuration du client LDAP
La section de configuration du client LDAP de la configuration définit les connexions à votre serveur LDAP.

La section de configuration du client LDAP de la configuration définit les connexions à votre serveur LDAP.

Configuration du client LDAP

url: ldap://10.0.0.0:389 1
bindDN: cn=admin,dc=example,dc=com 2
bindPassword: password 3
insecure: false 4
ca: my-ldap-ca-bundle.crt 5

1
Le protocole de connexion, l'adresse IP du serveur LDAP hébergeant votre base de données et le port auquel se connecter, formaté comme scheme://host:port.
2
Nom distinctif (DN) facultatif à utiliser comme DN de liaison. OpenShift Container Platform l'utilise si des privilèges élevés sont nécessaires pour récupérer les entrées pour l'opération de synchronisation.
3
Mot de passe facultatif à utiliser pour la liaison. OpenShift Container Platform l'utilise si des privilèges élevés sont nécessaires pour récupérer les entrées pour l'opération de synchronisation. Cette valeur peut également être fournie dans une variable d'environnement, un fichier externe ou un fichier crypté.
4
Lorsque false, les URL LDAP sécurisées (ldaps://) se connectent en utilisant TLS, et les URL LDAP non sécurisées (ldap://) sont mises à niveau vers TLS. Lorsque true, aucune connexion TLS n'est établie avec le serveur et vous ne pouvez pas utiliser les schémas d'URL ldaps://.
5
Le paquet de certificats à utiliser pour valider les certificats de serveur pour l'URL configurée. S'il est vide, OpenShift Container Platform utilise les racines de confiance du système. Cela ne s'applique que si insecure est défini sur false.
Définition d'une requête LDAP
Les configurations de synchronisation consistent en des définitions de requêtes LDAP pour les entrées nécessaires à la synchronisation. La définition spécifique d'une requête LDAP dépend du schéma utilisé pour stocker les informations sur les membres dans le serveur LDAP.

Définition d'une requête LDAP

baseDN: ou=users,dc=example,dc=com 1
scope: sub 2
derefAliases: never 3
timeout: 0 4
filter: (objectClass=person) 5
pageSize: 0 6

1
Le nom distinctif (DN) de la branche du répertoire à partir de laquelle toutes les recherches seront effectuées. Vous devez spécifier le sommet de l'arborescence de votre répertoire, mais vous pouvez également spécifier une sous-arborescence du répertoire.
2
L'étendue de la recherche. Les valeurs valables sont base, one ou sub. Si cette valeur n'est pas définie, l'étendue de sub est prise en compte. Les descriptions des options d'étendue se trouvent dans le tableau ci-dessous.
3
Comportement de la recherche par rapport aux alias dans l'arbre LDAP. Les valeurs valides sont never, search, base, ou always. Si cette valeur n'est pas définie, le déréférencement des alias se fait par défaut à l'aide de always. Les descriptions des comportements de déréférencement se trouvent dans le tableau ci-dessous.
4
La limite de temps autorisée pour la recherche par le client, en secondes. Une valeur de 0 n'impose aucune limite côté client.
5
Un filtre de recherche LDAP valide. Si ce paramètre n'est pas défini, la valeur par défaut est (objectClass=*).
6
Taille maximale facultative des pages de réponse du serveur, mesurée en entrées LDAP. Si la valeur est 0, aucune restriction de taille ne sera appliquée aux pages de réponses. La définition de la taille des pages est nécessaire lorsque les requêtes renvoient plus d'entrées que le client ou le serveur n'en autorise par défaut.
Tableau 18.1. Options d'étendue de la recherche LDAP
Étendue de la recherche LDAPDescription

base

Ne prendre en compte que l'objet spécifié par le DN de base donné pour la requête.

one

Tous les objets situés au même niveau de l'arbre sont considérés comme le DN de base de la requête.

sub

Considérer le sous-arbre entier enraciné dans le DN de base donné pour la requête.

Tableau 18.2. Comportements de déréférencement LDAP
Comportement de déréférencementDescription

never

Ne jamais déréférencer les alias trouvés dans l'arbre LDAP.

search

Ne déréférencer que les alias trouvés lors de la recherche.

base

Ne déréférencer que les alias lors de la recherche de l'objet de base.

always

Toujours déréférencer tous les alias trouvés dans l'arbre LDAP.

Mappage de noms définis par l'utilisateur
Un mappage de nom défini par l'utilisateur fait explicitement correspondre les noms des groupes OpenShift Container Platform à des identifiants uniques qui trouvent les groupes sur votre serveur LDAP. Le mappage utilise la syntaxe YAML normale. Un mappage défini par l'utilisateur peut contenir une entrée pour chaque groupe dans votre serveur LDAP ou seulement un sous-ensemble de ces groupes. S'il y a des groupes sur le serveur LDAP qui n'ont pas de mappage de nom défini par l'utilisateur, le comportement par défaut pendant la synchronisation est d'utiliser l'attribut spécifié comme nom du groupe OpenShift Container Platform.

Mappage de noms définis par l'utilisateur

groupUIDNameMapping:
  "cn=group1,ou=groups,dc=example,dc=com": firstgroup
  "cn=group2,ou=groups,dc=example,dc=com": secondgroup
  "cn=group3,ou=groups,dc=example,dc=com": thirdgroup

18.1.1. À propos du fichier de configuration RFC 2307

Le schéma RFC 2307 exige que vous fournissiez une définition de requête LDAP pour les entrées d'utilisateurs et de groupes, ainsi que les attributs avec lesquels les représenter dans les enregistrements internes d'OpenShift Container Platform.

Pour plus de clarté, le groupe que vous créez dans OpenShift Container Platform devrait utiliser des attributs autres que le nom distinctif dans la mesure du possible pour les champs orientés vers l'utilisateur ou l'administrateur. Par exemple, identifiez les utilisateurs d'un groupe OpenShift Container Platform par leur e-mail et utilisez le nom du groupe comme nom commun. Le fichier de configuration suivant crée ces relations :

Note

Si vous utilisez des correspondances de noms définies par l'utilisateur, votre fichier de configuration sera différent.

Configuration de la synchronisation LDAP qui utilise le schéma RFC 2307 : rfc2307_config.yaml

kind: LDAPSyncConfig
apiVersion: v1
url: ldap://LDAP_SERVICE_IP:389 1
insecure: false 2
rfc2307:
    groupsQuery:
        baseDN: "ou=groups,dc=example,dc=com"
        scope: sub
        derefAliases: never
        pageSize: 0
    groupUIDAttribute: dn 3
    groupNameAttributes: [ cn ] 4
    groupMembershipAttributes: [ member ] 5
    usersQuery:
        baseDN: "ou=users,dc=example,dc=com"
        scope: sub
        derefAliases: never
        pageSize: 0
    userUIDAttribute: dn 6
    userNameAttributes: [ mail ] 7
    tolerateMemberNotFoundErrors: false
    tolerateMemberOutOfScopeErrors: false

1
L'adresse IP et l'hôte du serveur LDAP où l'enregistrement de ce groupe est stocké.
2
Lorsque false, les URL LDAP sécurisées (ldaps://) se connectent en utilisant TLS, et les URL LDAP non sécurisées (ldap://) sont mises à niveau vers TLS. Lorsque true, aucune connexion TLS n'est établie avec le serveur et vous ne pouvez pas utiliser les schémas d'URL ldaps://.
3
L'attribut qui identifie de manière unique un groupe sur le serveur LDAP. Vous ne pouvez pas spécifier de filtres groupsQuery lorsque vous utilisez DN pour groupUIDAttribute. Pour un filtrage plus fin, utilisez la méthode whitelist / blacklist.
4
L'attribut à utiliser comme nom du groupe.
5
L'attribut du groupe qui stocke les informations relatives à l'appartenance.
6
L'attribut qui identifie de manière unique un utilisateur sur le serveur LDAP. Vous ne pouvez pas spécifier de filtres usersQuery lorsque vous utilisez DN pour userUIDAttribute. Pour un filtrage plus fin, utilisez la méthode whitelist / blacklist.
7
L'attribut à utiliser comme nom de l'utilisateur dans l'enregistrement du groupe OpenShift Container Platform.

18.1.2. A propos du fichier de configuration d'Active Directory

Le schéma Active Directory exige que vous fournissiez une définition de requête LDAP pour les entrées utilisateur, ainsi que les attributs pour les représenter dans les enregistrements de groupe internes d'OpenShift Container Platform.

Pour plus de clarté, le groupe que vous créez dans OpenShift Container Platform devrait utiliser des attributs autres que le nom distinctif chaque fois que possible pour les champs orientés vers l'utilisateur ou l'administrateur. Par exemple, identifiez les utilisateurs d'un groupe OpenShift Container Platform par leur e-mail, mais définissez le nom du groupe par le nom du groupe sur le serveur LDAP. Le fichier de configuration suivant crée ces relations :

Configuration de la synchronisation LDAP qui utilise le schéma Active Directory : active_directory_config.yaml

kind: LDAPSyncConfig
apiVersion: v1
url: ldap://LDAP_SERVICE_IP:389
activeDirectory:
    usersQuery:
        baseDN: "ou=users,dc=example,dc=com"
        scope: sub
        derefAliases: never
        filter: (objectclass=person)
        pageSize: 0
    userNameAttributes: [ mail ] 1
    groupMembershipAttributes: [ memberOf ] 2

1
L'attribut à utiliser comme nom de l'utilisateur dans l'enregistrement du groupe OpenShift Container Platform.
2
L'attribut de l'utilisateur qui stocke les informations relatives à l'adhésion.

18.1.3. À propos du fichier de configuration Active Directory augmenté

Le schéma Active Directory augmenté vous oblige à fournir une définition de requête LDAP pour les entrées d'utilisateurs et de groupes, ainsi que les attributs avec lesquels les représenter dans les enregistrements de groupes internes d'OpenShift Container Platform.

Pour plus de clarté, le groupe que vous créez dans OpenShift Container Platform devrait utiliser des attributs autres que le nom distinctif dans la mesure du possible pour les champs orientés vers l'utilisateur ou l'administrateur. Par exemple, identifiez les utilisateurs d'un groupe OpenShift Container Platform par leur e-mail et utilisez le nom du groupe comme nom commun. Le fichier de configuration suivant crée ces relations.

Configuration de la synchronisation LDAP qui utilise le schéma Active Directory augmenté : augmented_active_directory_config.yaml

kind: LDAPSyncConfig
apiVersion: v1
url: ldap://LDAP_SERVICE_IP:389
augmentedActiveDirectory:
    groupsQuery:
        baseDN: "ou=groups,dc=example,dc=com"
        scope: sub
        derefAliases: never
        pageSize: 0
    groupUIDAttribute: dn 1
    groupNameAttributes: [ cn ] 2
    usersQuery:
        baseDN: "ou=users,dc=example,dc=com"
        scope: sub
        derefAliases: never
        filter: (objectclass=person)
        pageSize: 0
    userNameAttributes: [ mail ] 3
    groupMembershipAttributes: [ memberOf ] 4

1
L'attribut qui identifie de manière unique un groupe sur le serveur LDAP. Vous ne pouvez pas spécifier de filtres groupsQuery lorsque vous utilisez DN pour groupUIDAttribute. Pour un filtrage plus fin, utilisez la méthode whitelist / blacklist.
2
L'attribut à utiliser comme nom du groupe.
3
L'attribut à utiliser comme nom de l'utilisateur dans l'enregistrement du groupe OpenShift Container Platform.
4
L'attribut de l'utilisateur qui stocke les informations relatives à l'adhésion.
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.