Rechercher

24.3. Utiliser Ansible pour s'assurer qu'une condition spécifiée est présente dans une règle de membre automatique d'un groupe d'utilisateurs IdM

download PDF

La procédure suivante décrit comment utiliser un playbook Ansible pour s'assurer qu'une condition spécifiée existe dans une règle automember pour un groupe de gestion des identités (IdM). Dans l'exemple, la présence d'une condition liée à l'UID dans la règle automember est assurée pour le groupe testing_group. En spécifiant la condition .*, vous vous assurez que tous les futurs utilisateurs IdM deviennent automatiquement membres du groupe testing_group.

Conditions préalables

  • Vous connaissez le mot de passe de l'IdM admin.
  • Le groupe d'utilisateurs testing_group et la règle du groupe d'utilisateurs automember existent dans IdM.
  • Vous avez configuré votre nœud de contrôle Ansible pour qu'il réponde aux exigences suivantes :

    • Vous utilisez la version 2.8 ou ultérieure d'Ansible.
    • Vous avez installé le paquetage ansible-freeipa sur le contrôleur Ansible.
    • L'exemple suppose que dans le répertoire ~/MyPlaybooks/ vous avez créé un fichier d'inventaire Ansible avec le nom de domaine complet (FQDN) du serveur IdM.
    • L'exemple suppose que le coffre-fort secret.yml Ansible stocke votre ipaadmin_password.

Procédure

  1. Naviguez jusqu'à votre répertoire ~/MyPlaybooks/ répertoire :

    $ cd ~/MyPlaybooks/
  2. Copiez le fichier automember-hostgroup-rule-present.yml Ansible playbook situé dans le répertoire /usr/share/doc/ansible-freeipa/playbooks/automember/ et nommez-le, par exemple, automember-usergroup-rule-present.yml:

    $ cp /usr/share/doc/ansible-freeipa/playbooks/automember/automember-hostgroup-rule-present.yml automember-usergroup-rule-present.yml
  3. Ouvrez le fichier automember-usergroup-rule-present.yml pour le modifier.
  4. Adapter le fichier en modifiant les paramètres suivants :

    • Renommez le playbook pour qu'il corresponde à votre cas d'utilisation, par exemple : Automember user group rule member present.
    • Renommez la tâche pour qu'elle corresponde à votre cas d'utilisation, par exemple : Ensure an automember condition for a user group is present.
    • Définissez les variables suivantes dans la section ipaautomember task :

      • Fixer la variable ipaadmin_password au mot de passe de l'IdM admin.
      • Fixer la variable name à testing_group.
      • Fixer la variable automember_type à group.
      • Assurez-vous que la variable state est définie sur present.
      • Assurez-vous que la variable action est définie sur member.
      • Fixez la variable inclusive key à UID.
      • Fixer la variable inclusive expression à .*

    Il s'agit du fichier playbook Ansible modifié pour l'exemple actuel :

    ---
    - name: Automember user group rule member present
      hosts: ipaserver
      vars_files:
      - /home/user_name/MyPlaybooks/secret.yml
      tasks:
      - name: Ensure an automember condition for a user group is present
        ipaautomember:
          ipaadmin_password: "{{ ipaadmin_password }}"
          name: testing_group
          automember_type: group
          state: present
          action: member
          inclusive:
            - key: UID
              expression: .*
  5. Enregistrer le fichier.
  6. Exécutez le playbook Ansible. Spécifiez le fichier du livre de jeu, le fichier contenant le mot de passe protégeant le fichier secret.yml et le fichier d'inventaire :

    $ ansible-playbook --vault-password-file=password_file -v -i inventory automember-usergroup-rule-present.yml

Verification steps

  1. Se connecter en tant qu'administrateur IdM.

    $ kinit admin
  2. Ajouter un utilisateur, par exemple :

    $ ipa user-add user101 --first user --last 101
    -----------------------
    Added user "user101"
    -----------------------
      User login: user101
      First name: user
      Last name: 101
      ...
      Member of groups: ipausers, testing_group
      ...

Ressources supplémentaires

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.