6.3. Assurer la présence d'une politique de mot de passe dans IdM à l'aide d'un playbook Ansible
Cette section décrit comment assurer la présence d'une politique de mot de passe dans la gestion des identités (IdM) à l'aide d'un playbook Ansible.
Dans la politique de mot de passe global_policy
par défaut dans IdM, le nombre de classes de caractères différents dans le mot de passe est fixé à 0. La taille de l'historique est également fixée à 0.
Effectuez cette procédure pour appliquer une politique de mot de passe plus stricte pour un groupe IdM à l'aide d'un playbook Ansible.
Vous ne pouvez définir une politique de mot de passe que pour un groupe IdM. Vous ne pouvez pas définir une politique de mot de passe pour un utilisateur individuel.
Conditions préalables
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
.
- Vous connaissez le mot de passe de l'administrateur IdM.
- Le groupe pour lequel vous vous assurez de la présence d'une politique de mot de passe existe dans IdM.
Procédure
Créez un fichier d'inventaire, par exemple
inventory.file
, et définissez leFQDN
de votre serveur IdM dans la section[ipaserver]
:[ipaserver] server.idm.example.com
Créez votre fichier playbook Ansible qui définit la politique de mot de passe dont vous voulez assurer la présence. Pour simplifier cette étape, copiez et modifiez l'exemple dans le fichier
/usr/share/doc/ansible-freeipa/playbooks/pwpolicy/pwpolicy_present.yml
:--- - name: Tests hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: Ensure presence of pwpolicy for group ops ipapwpolicy: ipaadmin_password: "{{ ipaadmin_password }}" name: ops minlife: 7 maxlife: 49 history: 5 priority: 1 lockouttime: 300 minlength: 8 minclasses: 4 maxfail: 3 failinterval: 5
Pour plus de détails sur la signification des différentes variables, voir Attributs de la politique de mot de passe.
Exécutez le manuel de jeu :
$ ansible-playbook --vault-password-file=password_file -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory_/new_pwpolicy_present.yml
Vous avez utilisé avec succès un playbook Ansible pour vous assurer qu'une politique de mot de passe pour le groupe ops est présente dans IdM.
La priorité de la politique de mot de passe ops est fixée à 1, alors que la politique de mot de passe global_policy n'a pas de priorité définie. Pour cette raison, la politique ops remplace automatiquement global_policy pour le groupe ops et est appliquée immédiatement.
global_policy sert de stratégie de repli lorsqu'aucune stratégie de groupe n'est définie pour un utilisateur, et ne peut jamais avoir la priorité sur une stratégie de groupe.
Ressources supplémentaires
-
Voir le fichier
README-pwpolicy.md
dans le répertoire/usr/share/doc/ansible-freeipa/
. - Voir les priorités politiques du mot de passe.