Chapitre 9. Utilisation de ldapmodify pour gérer les utilisateurs IdM en externe
En tant qu'administrateur IdM, vous pouvez utiliser les commandes ipa
pour gérer le contenu de votre annuaire. Vous pouvez également utiliser la commande ldapmodify
pour atteindre des objectifs similaires. Vous pouvez utiliser cette commande de manière interactive et fournir toutes les données directement dans la ligne de commande. Vous pouvez également fournir les données du fichier au format LDAP Data Interchange Format (LDIF) à la commande ldapmodify
.
9.1. Modèles pour la gestion externe des comptes d'utilisateurs IdM
Cette section décrit des modèles pour diverses opérations de gestion des utilisateurs dans IdM. Les modèles indiquent les attributs que vous devez modifier à l'aide de ldapmodify
pour atteindre les objectifs suivants :
- Ajout d'un nouvel utilisateur de l'étape
- Modifier l'attribut d'un utilisateur
- Activation d'un utilisateur
- Désactivation d'un utilisateur
- Préserver un utilisateur
Les modèles sont formatés dans le format d'échange de données LDAP (LDIF). LDIF est un format standard d'échange de données en texte clair pour représenter le contenu de l'annuaire LDAP et les demandes de mise à jour.
À l'aide des modèles, vous pouvez configurer le fournisseur LDAP de votre système de provisionnement pour gérer les comptes d'utilisateurs IdM.
Pour des exemples détaillés de procédures, voir les sections suivantes :
Modèles pour l'ajout d'un nouvel utilisateur de l'étape
Un modèle pour ajouter un utilisateur avec UID and GID assigned automatically. Le nom distinctif (DN) de l'entrée créée doit commencer par
uid=user_login
:dn: uid=user_login,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com changetype: add objectClass: top objectClass: inetorgperson uid: user_login sn: surname givenName: first_name cn: full_name
Un modèle pour ajouter un utilisateur avec UID and GID assigned statically:
dn: uid=user_login,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com changetype: add objectClass: top objectClass: person objectClass: inetorgperson objectClass: organizationalperson objectClass: posixaccount uid: user_login uidNumber: UID_number gidNumber: GID_number sn: surname givenName: first_name cn: full_name homeDirectory: /home/user_login
Il n'est pas nécessaire de spécifier des classes d'objets IdM lors de l'ajout d'utilisateurs de scène. L'IdM ajoute ces classes automatiquement après l'activation des utilisateurs.
Modèles pour la modification des utilisateurs existants
Modifying a user’s attribute:
dn: distinguished_name changetype: modify replace: attribute_to_modify attribute_to_modify: new_value
Disabling a user:
dn: distinguished_name changetype: modify replace: nsAccountLock nsAccountLock: TRUE
Enabling a user:
dn: distinguished_name changetype: modify replace: nsAccountLock nsAccountLock: FALSE
La mise à jour de l'attribut
nssAccountLock
n'a aucun effet sur les utilisateurs de l'étape et les utilisateurs préservés. Même si l'opération de mise à jour se termine avec succès, la valeur de l'attribut restenssAccountLock: TRUE
.Preserving a user:
dn: distinguished_name changetype: modrdn newrdn: uid=user_login deleteoldrdn: 0 newsuperior: cn=deleted users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
Avant de modifier un utilisateur, obtenez son nom distinctif (DN) en effectuant une recherche à l'aide de son login. Dans l'exemple suivant, l'utilisateur user_allowed_to_modify_user_entries est un utilisateur autorisé à modifier les informations relatives aux utilisateurs et aux groupes, par exemple activator ou l'administrateur IdM. Le mot de passe dans l'exemple est le mot de passe de cet utilisateur :
[...]
# ldapsearch -LLL -x -D "uid=user_allowed_to_modify_user_entries,cn=users,cn=accounts,dc=idm,dc=example,dc=com" -w "Secret123" -H ldap://r8server.idm.example.com -b "cn=users,cn=accounts,dc=idm,dc=example,dc=com" uid=test_user
dn: uid=test_user,cn=users,cn=accounts,dc=idm,dc=example,dc=com
memberOf: cn=ipausers,cn=groups,cn=accounts,dc=idm,dc=example,dc=com