cchurch.admin-users
Utilisateurs Admin
Gérez les utilisateurs admin, les clés autorisées et l'accès sudo.
Le support des versions d'Ansible < 2.8 a été abandonné à partir de la version 0.9.0.
Exigences
Le package sudo sera installé s'il n'est pas déjà présent. Amazon Linux nécessite également que le package shadow-utils soit installé avant d'exécuter ce rôle.
Variables de rôle
Les variables suivantes peuvent être définies pour personnaliser ce rôle :
admin_users: Liste des utilisateurs admin à créer ou mettre à jour ; la valeur par défaut est[]. Chaque élément de cette liste doit être un objet ayant les clés suivantes :username: Nom d'utilisateur de l'utilisateur admin (obligatoire).fullname: Nom complet de l'utilisateur admin (facultatif).shell: Shell par défaut pour cet utilisateur ;admin_users_default_shellsera utilisé si cette clé est omise.pubkey: La clé publique à associer à l'utilisateur donné. Cette valeur peut être une chaîne contenant le contenu de la clé publique de l'utilisateur, une chaîne contenant une URL vers une liste de clés (ex. https://github.com/username.keys), ou une liste de plusieurs chaînes contenant soit le contenu de clés publiques soit des URL. Le support des listes de clés a été ajouté dans 0.7.0.pubkey_options: Options supplémentaires à passer au moduleauthorized_key(facultatif).exclusive: Booléen indiquant s'il faut supprimer toutes les autres clés publiques (facultatif).
admin_user_groups: Booléen indiquant s'il faut créer/supprimer ; par défaut, c'esttrue.admin_users_sudo_nopasswd: Booléen indiquant s'il faut activer sudo avec l'optionNOPASSWDpour les utilisateurs admin ; par défaut, c'esttrue.admin_users_default_shell: Shell par défaut pour les utilisateurs admin ; par défaut, c'est"/bin/bash".admin_users_to_remove: Liste des noms d'utilisateur à supprimer du système distant ; par défaut, c'est[]. Siadmin_user_groupsesttrue, les groupes avec ces noms d'utilisateur seront également supprimés.
Dépendances
Aucune.
Exemple de Playbook
Le playbook suivant met à jour les utilisateurs admin sur les serveurs de développement et de production avec différentes options :
- hosts: serveurs-dev
vars:
dev_admin_users:
- username: joe
fullname: "Joe Dev"
pubkey:
- "ssh-rsa ..."
- "ssh-dsa ..."
- username: jim
fullname: "Jim Dev"
shell: "/bin/sh"
pubkey: "https://github.com/jim.keys"
exclusive: true
roles:
- role: cchurch.admin-users
admin_users: dev_admin_users
- hosts: serveurs-prod
vars:
prod_admin_users:
- username: jon
fullname: "Jon Admin"
pubkey: "ssh-rsa ..."
roles:
- role: cchurch.admin-users
admin_users: prod_admin_users
admin_users_sudo_nopasswd: false
Licence
BSD
Informations sur l'auteur
Chris Church (cchurch)
ansible-galaxy install cchurch.admin-users