Le rôle « Users » est chargé de créer les utilisateurs et groupes nécessaires au système. Il met aussi en place les clé publique SSH et les autorisations sudo.

Le rôle « Users Defer » est chargé de créer les utilisateurs non requis par les services mais par l’usage. Le suffix defer est présent sur ses variables. Si un utilisateur est modifié par ce rôle, il est important que ce qu’il configure ne soit pas configuré par le rôle « Users ».

Tags internes

  • users : Création des utilisateurs et groupes ;
  • groups : Création des groupes uniquement ;
  • users-keys : Mise en place des clés publiques ;

Traitements spécifiques du jeu de tâches

Afin de permettre l’usage direct et l’usage en dépendance de role, les noms de variable à fournir sont différents de ceux attendus.

Variable côté jeu de tâches Variable côté rôle
custom_users create_users
custom_groups create_groups
custom_users_authentication_keys users_authentication_keys
custom_users_sudo users_sudo
custom_users_sudoers sudoers_filename
custom_users_defer create_users_defer

custom_users_sudoers vaut par défaut site-ansible.

Variables à fournir

Variable Type Requis Défaut Description
create_users Liste d’objets user Non Liste vide Utilisateurs à créer ou modifier
create_groups Liste d’objets group Non Liste vide Groupes à créer ou modifier
users_authentication_keys Liste d’objets authkey Non Liste vide Clés publiques à activer sur les utilisateurs
users_sudo Liste de Texte Non Liste vide Lignes sudo à mettre en place
users_pk_resources_path Chemin Non Chaîne vide Dossier, relatif au playbook sous lequel sont les clés publiques
sudoers_filename Chemin Oui “ansible” Nom du fichier sudoers, à personnaliser si des configurations sudo sont à mettre en place.
create_users_defer Liste d’objets userdefer Non Liste vide Utilisateurs à créer ou modifier (simplifié)

Type user

Propriété Type Requis Défaut Description
name Identifiant Oui Identifiant de l’utilisateur
group Identifiant Non name Identifiant du groupe de l’utilisateur, doit exister si spécifié
groups Texte Non Chaîne vide Liste des identifiants de groupe séparés par des virgules
home Chemin Non dépendant du système Dossier d’accueil de l’utilisateur
comment Texte Non Chaîne vide Commentaire de l’utilisateur
generate_ssh Booléen Non Faux Générer une paire de clé SSH pour l’utilisateur à la création
password Texte Non Chaîne vide Mot de passe chiffrée de l’utilisateur ou vide pour désactiver
shell Chemin Non dépendant du système Emplacement de l’exécutable du shell
system Booléen Non Faux Créer un compte système (uid généré différent)
uid Entier Non automatique Identifiant numérique de l’utilisateur à utiliser
keep_password Booléen Non Faux Forcer le mot de passe à celui configuré ici
password_lock Booléen Non Absent Verrouiller ou déverrouiller le mot de passe
present Booléen Non Vrai L’utilisateur doit exister
force_reuse Booléen Non Faux Permet la création d’un utilisateur avec un identifiant numérique existant

Type group

Propriété Type Requis Défaut Description
name Identifiant Oui Identifiant du groupe
system Booléen Non Faux Créer un groupe système (uid généré différent)
gid Entier Non automatique Identifiant numérique du groupe à utiliser
present Booléen Non Vrai Le groupe doit exister

Le nom du groupe peut être placé seul à la place de l’objet s’il n’y a pas d’autre élément à configurer.

Type authkey

Propriété Type Requis Défaut Description
username Identifiant Oui Identifiant de l’utilisateur
key Texte Le texte de la clé publique au format ssh-* keydata comment
keyfile Chemin Chemin du fichier relatif à users_pk_resources_path contenant la clé publique au format ssh-* keydata comment
options Texte Non Chaîne vide Options de la clé SSH
remove Booléen Non Faux Retirer la clé

L’un des deux entre key et keyfile doit être spécifié.

Type userdefer

Propriété Type Requis Défaut Description
name Identifiant Oui Identifiant de l’utilisateur
groups Texte Non Chaîne vide Liste des identifiants de groupe séparés par des virgules
shell Chemin Non dépendant du système Emplacement de l’exécutable du shell