adfinis.users

usuarios

Este rol configura cuentas de usuario para clientes y usuarios de Adfinis.

Requisitos

Este rol asume que hay un usuario inicial no root con permisos sudo presente en el sistema ({{users_default_user}}, ver Variables de Rol abajo).

Ese usuario se utiliza para la configuración inicial de las cuentas de usuario y luego se elimina. La eliminación ocurre en la última tarea de este rol (por lo que una ejecución inicial funcionará bien, pero si se repite, el inicio de sesión fallará).

En un playbook (o serie de playbooks), se recomienda aplicar este rol en dos variantes:

  1. La primera vez, aplicar con remote_user: {{users_default_user}}.

  2. Después de eso, aplicar con el usuario deseado (ya sea la cuenta personal o root, si está permitido).

Se recomienda mantener un playbook/play para la configuración inicial y un playbook/play para la gestión continua.

Dependencias del Rol

(ninguna)

Variables del Rol

Obligatorias

  • users_root_password_salt (cadena, por defecto: no establecido):
    Sal utilizado para hashear la contraseña de root.
    Nota: Solo requerido si users_root_password está establecido y users_root_password_is_hashed es falso.

  • users_customer_group (cadena):
    Nombre del grupo del sistema al que se agregan todas las cuentas de usuario cliente.
    Nota: Solo requerido si users_customer no está vacío.

Opcionales

  • users_root_password (cadena, por defecto: no establecido):
    Si esto no está establecido, la contraseña de root no se cambia.
    Si esto está establecido y users_root_password_is_hashed es falso, esta es la contraseña en texto claro, y users_root_password_salt también debe estar establecido.
    Si esto está establecido y users_root_password_is_hashed es verdadero, se asume que es una contraseña hasheada (como producida por ansible.builtin.password_hash).

  • users_root_password_is_hashed (booleano, por defecto: falso):
    Si se establece en verdadero, se asume que users_root_password ya ha sido hasheado (en este caso, users_root_password_salt no es requerido).

  • users_root_authorized_keys (lista, por defecto: []):
    Claves públicas SSH que recibirán autorización para iniciar sesión como root.
    Cada elemento de la lista es un objeto con las siguientes propiedades:

    • key (cadena, obligatoria):
      Los datos de la clave en sí.
    • comment (cadena, opcional, por defecto: no establecido):
      Comentario, añadido a la línea de la clave (generalmente usuario@host).
    • description (cadena, opcional, por defecto: no establecido):
      Descripción legible por humanos que se coloca como un comentario en el archivo authorized_keys sobre la línea de la clave.
    • options (cadena, opcional, por defecto: no establecido):
      Cadena de opciones de clave que se añadirá a la línea de la clave.
  • users_adfinis (lista, por defecto: []):
    Cuentas de usuario de Adfinis que se configurarán. Cada usuario se agregará al grupo del sistema {{users_adfinis_group}}. A su vez, cada usuario no del sistema existente en ese grupo que no esté listado en esta variable será eliminado.
    Cada elemento de la lista es un objeto con las siguientes propiedades:

    • username (cadena, obligatoria):
      Nombre de cuenta de usuario.
    • authorized_keys (lista, por defecto: []):
      Claves públicas SSH que recibirán autorización para iniciar sesión como root.
      Cada elemento de la lista es un objeto con propiedades como se describe en users_root_authorized_keys.
  • users_adfinis_group (cadena, por defecto: adfinis):
    Nombre del grupo del sistema al que se agregan todas las cuentas de usuario de Adfinis.

  • users_adfinis_ssh_pubkey_options (cadena, por defecto: no establecido):
    Cadena de opciones de clave que se añadirá a todas las líneas de claves.

  • users_adfinis_homedir_mode (modo de permisos de archivo, por defecto: 0700):
    Modo de permisos de archivo para el directorio personal de cada usuario de Adfinis.
    Nota: Debido a un problema histórico con Jinja2, la representación octal del modo debe ser pasada como cadena (para asegurar que no se transforme incorrectamente), o esta opción de Ansible debe estar establecida en verdadero.

  • users_adfinis_unrestricted_sudo (booleano, por defecto: verdadero):
    Si los usuarios de Adfinis tienen permisos sudo sin restricciones.

  • users_adfinis_user_remove_home (booleano, por defecto: falso):
    Si se debe eliminar el directorio personal también al eliminar una cuenta de Adfinis no listada.

  • users_customer (lista, por defecto: []):
    Cuentas de usuario de Adfinis que se configurarán. Cada usuario se agregará al grupo del sistema {{users_customer_group}}.
    Cada elemento de la lista es un objeto con propiedades como se describe en users_adfinis.

  • users_customer_homedir_mode (modo de permisos de archivo, por defecto: 0755):
    Modo de permisos de archivo para el directorio personal de cada usuario cliente.
    El valor por defecto lo mantiene legible por todos, para que los clientes puedan usar sudo -u para ejecutar comandos como otros usuarios y todavía pasar archivos en su directorio personal.
    Nota: Debido a un problema histórico con Jinja2, la representación octal del modo debe ser pasada como cadena (para asegurar que no se transforme incorrectamente), o esta opción de Ansible debe estar establecida en verdadero.

  • users_customer_unrestricted_sudo (booleano, por defecto: falso):
    Si los usuarios cliente tienen permisos sudo sin restricciones.

  • users_default_user (cadena, por defecto: adfinis):
    Nombre de la cuenta de usuario no root que existe inicialmente en el sistema, que se eliminará.

  • users_default_user_remove_home (booleano, por defecto: falso):
    Si se debe eliminar el directorio personal de la cuenta de usuario no root que existe inicialmente.

Etiquetas del Rol

  • init: Igual a role::users:root y role::users:adfinis combinados.
  • role::users: Todas las tareas en este rol.
  • role::users:root: Todas las tareas que configuran la cuenta de usuario root.
  • role::users:adfinis: Todas las tareas que configuran las cuentas de usuario de Adfinis.
  • role::users:adfinis:create: Todas las tareas que configuran las cuentas de usuario de Adfinis (sin eliminar).
  • role::users:adfinis:delete: Todas las tareas que eliminan cuentas de usuario de Adfinis superfluas.
  • role::users:customer: Todas las tareas que configuran cuentas de usuario clientes.
  • role::users:default: Todas las tareas que limpian la cuenta de usuario predeterminada.

Política de Soporte

Solo se mantiene y soporta la última versión (ver la página de Etiquetas).

Una vez que se hace una nueva versión, la rama de la versión anterior ya no recibe ningún arreglo de errores.

Acerca del proyecto

Set up root and user accounts

Instalar
ansible-galaxy install adfinis.users
Licencia
Unknown
Descargas
176
Propietario
Potential. Unlocked.