javiergayala.users

javiergayala.users

Molecule Ansible Role Ansible Role Ansible Quality Score GitHub release (latest SemVer) GitHub Release Date

Ceci est un rôle qui crée des utilisateurs sur des serveurs.

Variables du rôle

  • users_list: liste contenant des dictionnaires d’utilisateurs à ajouter

    • name: nom d'utilisateur à créer

    • groups: liste délimitée par des virgules des groupes secondaires. Par défaut, aucun.

    • ssh_key: chaîne de texte contenant la clé ssh publique de l'utilisateur qui sera placée dans /home/$USER/.ssh/authorized_keys

    • sudoers: si défini sur yes, l'utilisateur sera ajouté au fichier sudoers du serveur.

    • sudo_opts: dictionnaire contenant les options à utiliser pour le fichier sudoers.

      • passwordless: (Booléen) par défaut à "False". Définir sur "True" pour permettre aux commandes sudo de ne pas demander de mot de passe.
      • hosts: par défaut à ALL. Hôtes sur lesquels l'utilisateur est autorisé à exécuter sudo.
      • run_as: par défaut à (ALL). Utilisateurs autorisés à exécuter des commandes sudo.
      • commands: par défaut à ALL. Commandes que l'utilisateur est autorisé à exécuter avec sudo.
      • requiretty: (Booléen) non défini par défaut. Définir sur False pour désactiver l'exigence d'un TTY lorsque vous utilisez sudo.
    • user_sshkey_exclusive: par défaut à no. Le définir sur yes indique à ansible de gérer les clés dans le fichier authorized_keys et de supprimer celles qui ne sont pas définies dans le play.

    • use_os_prompt: par défaut à no. Le définir sur yes ou True fera en sorte que cet utilisateur ne utilise PAS l'invite bash spécialisée. Cela est utile pour les comptes de service, comme le compte de déploiement jenkins ou rswebteam, ou tout compte qui n'utilise pas un TTY.

users_list:
  - name: deployment
    groups: apache
    ssh_key: >
      ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGY
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      RdK8jlqm8tehUc9c9WhQ== clé publique non sécurisée vagrant
    sudoers: "yes"
    sudo_opts:
      passwordless: "True"
      hosts: "ALL"
      run_as: "(ALL)"
      commands: "ALL"
      requiretty: "False"
    use_os_prompt: "yes"
  - name: user1
    ssh_key: https://github.com/javiergayala.keys
    sudoers: "no"
  - name: user2

Exemple de Playbook

- hosts: servers
  roles:
    - { role: javiergayala.users, users_list: [{ name: user1 }] }

Test

Vous aurez besoin de ce qui suit pour tester et exécuter ce rôle :

Il est fortement recommandé d'utiliser un virtualenv pour les tests :

PYENV_HOME=$WORKSPACE/.pyenv/

# Supprimer le virtualenv déjà construit
if [ -d $PYENV_HOME ]; then
    rm -rf $PYENV_HOME
fi

# Créer un virtualenv et installer les paquets nécessaires
virtualenv --no-site-packages $PYENV_HOME
. $PYENV_HOME/bin/activate
pip install -r pip-requirements.txt

molecule test --all

Licence

BSD

Informations sur l'auteur

Javier Ayala [email protected]

À propos du projet

Add and configure user accounts

Installer
ansible-galaxy install javiergayala.users
Licence
Unknown
Téléchargements
132
Propriétaire