adfinis-sygroup.users

Benutzer

Diese Rolle richtet Kunden- und Adfinis-Benutzerkonten ein.

Anforderungen

Diese Rolle geht davon aus, dass ein anfänglicher Nicht-Root-Benutzer mit Sudo-Rechten auf dem System vorhanden ist ({{users_default_user}}, siehe Rollenvariablen unten).

Dieser Benutzer wird für die Einrichtung der Benutzerkonten verwendet und anschließend gelöscht. Die Löschung erfolgt in der letzten Aufgabe dieser Rolle (ein erster Durchlauf funktioniert gut, aber wenn sie wiederholt wird, schlägt der Login fehl).

In einem Playbook (oder einer Reihe von Playbooks) wird daher empfohlen, diese Rolle in zwei Varianten anzuwenden:

  1. Beim ersten Mal mit remote_user: {{users_default_user}} anwenden.

  2. Danach mit dem vorgesehenen Benutzer anwenden (entweder das persönliche Konto oder root, wenn dies erlaubt ist).

Es wird empfohlen, ein Playbook/einen Play für die anfängliche Einrichtung und ein Playbook/einen Play für das fortlaufende Management zu verwenden.

Rollenabhängigkeiten

(keine)

Rollenvariablen

Pflicht

  • users_root_password_salt (string, Standard: nicht gesetzt):
    Salt für die Hashung des Root-Passworts.
    Hinweis: Nur erforderlich, wenn users_root_password gesetzt ist und users_root_password_is_hashed falsch ist.

  • users_customer_group (string):
    Name der Systemgruppe, zu der alle Kundenbenutzerkonten hinzugefügt werden.
    Hinweis: Nur erforderlich, wenn users_customer nicht leer ist.

Optional

  • users_root_password (string, Standard: nicht gesetzt):
    Wenn dies nicht gesetzt ist, wird das Root-Passwort nicht geändert.
    Wenn dies gesetzt ist und users_root_password_is_hashed falsch ist, ist dies das Passwort im Klartext, und users_root_password_salt muss ebenfalls gesetzt sein.
    Wenn dies gesetzt ist und users_root_password_is_hashed wahr ist, wird angenommen, dass es sich um ein gehashtes Passwort handelt (wie es von [ansible.builtin.password_hash][ansible:filter:password_hash] erzeugt wird).

  • users_root_password_is_hashed (boolean, Standard: false):
    Wenn auf true gesetzt, wird angenommen, dass users_root_password bereits gehasht ist (in diesem Fall ist users_root_password_salt nicht erforderlich).

  • users_root_authorized_keys (Liste, Standard: []):
    SSH-öffentliche Schlüssel, die die Berechtigung zum Einloggen als root erhalten.
    Jedes Listenelement ist ein Objekt mit den folgenden Eigenschaften:

    • key (string, verpflichtend):
      Der Schlüssel selbst.
    • comment (string, optional, Standard: nicht gesetzt):
      Kommentar, der an die Schlüsselzeile angehängt wird (normalerweise user@host).
    • description (string, optional, Standard: nicht gesetzt):
      Menschlich lesbare Beschreibung, die als Kommentar über der Schlüsselzeile in die authorized_keys-Datei eingegeben wird.
    • options (string, optional, Standard: nicht gesetzt):
      Zeilen mit Schlüsseloptionen, die der Schlüsselzeile vorangestellt werden.
  • users_adfinis (Liste, Standard: []):
    Adfinis-Benutzerkonten, die eingerichtet werden sollen. Jeder Benutzer wird der Systemgruppe {{users_adfinis_group}} hinzugefügt. Umgekehrt werden alle bestehenden Nicht-Systembenutzer in dieser Gruppe, die nicht in dieser Variablen aufgeführt sind, gelöscht.
    Jedes Listenelement ist ein Objekt mit den folgenden Eigenschaften:

    • username (string, verpflichtend):
      Benutzerkontoname.
    • authorized_keys (Liste, Standard: []):
      SSH-öffentliche Schlüssel, die die Berechtigung zum Einloggen als root erhalten.
      Jedes Listenelement ist ein Objekt mit Eigenschaften wie in users_root_authorized_keys beschrieben.
  • users_adfinis_group (string, Standard: adfinis):
    Name der Systemgruppe, zu der alle Adfinis-Benutzerkonten hinzugefügt werden.

  • users_adfinis_ssh_pubkey_options (string, Standard: nicht gesetzt):
    String mit Schlüsseloptionen, der allen Schlüsselzeilen vorangestellt wird.

  • users_adfinis_homedir_mode (Dateiberechtigungsmodus, Standard: 0700):
    Dateiberechtigungsmodus für das Home-Verzeichnis jedes Adfinis-Benutzers.
    Hinweis: Aufgrund eines historischen Problems mit Jinja2 muss die oktale Darstellung des Modus entweder als String übergeben werden (um sicherzustellen, dass sie nicht falsch umgewandelt wird), oder [diese Ansible-Option][ansible:vars:default_jinja2_native] muss auf true gesetzt werden.

  • users_adfinis_unrestricted_sudo (boolean, Standard: true):
    Ob die Adfinis-Benutzer uneingeschränkte sudo-Berechtigungen erhalten.

  • users_adfinis_user_remove_home (boolean, Standard: false):
    Ob das Home-Verzeichnis ebenfalls gelöscht werden soll, wenn ein nicht aufgeführtes Adfinis-Konto gelöscht wird.

  • users_customer (Liste, Standard: []):
    Kundenbenutzerkonten, die eingerichtet werden sollen. Jeder Benutzer wird der Systemgruppe {{users_customer_group}} hinzugefügt.
    Jedes Listenelement ist ein Objekt mit Eigenschaften wie in users_adfinis beschrieben.

  • users_customer_homedir_mode (Dateiberechtigungsmodus, Standard: 0755):
    Dateiberechtigungsmodus für das Home-Verzeichnis jedes Kundenbenutzers.
    Der Standardwert bleibt für die Öffentlichkeit lesbar, sodass Kunden sudo -u verwenden können, um Befehle als andere Benutzer auszuführen und weiterhin Dateien in ihrem Home-Verzeichnis übergeben können.
    Hinweis: Aufgrund eines historischen Problems mit Jinja2 muss die oktale Darstellung des Modus entweder als String übergeben werden (um sicherzustellen, dass sie nicht falsch umgewandelt wird), oder [diese Ansible-Option][ansible:vars:default_jinja2_native] muss auf true gesetzt werden.

  • users_customer_unrestricted_sudo (boolean, Standard: false):
    Ob die Kundenbenutzer uneingeschränkte sudo-Berechtigungen erhalten.

  • users_default_user (string, Standard: adfinis):
    Name des anfänglich vorhandenen Nicht-Root-Benutzerkontos im System, das gelöscht werden soll.

  • users_default_user_remove_home (boolean, Standard: false):
    Ob das Home-Verzeichnis des anfänglich vorhandenen Nicht-Root-Benutzerkontos ebenfalls gelöscht werden soll.

Rollen-Tags

  • init: Entspricht der Kombination von role::users:root und role::users:adfinis.
  • role::users: Alle Aufgaben in dieser Rolle.
  • role::users:root: Alle Aufgaben, die das Root-Benutzerkonto einrichten.
  • role::users:adfinis: Alle Aufgaben, die die Adfinis-Benutzerkonten einrichten.
  • role::users:adfinis:create: Alle Aufgaben, die die Adfinis-Benutzerkonten einrichten (ohne sie zu löschen).
  • role::users:adfinis:delete: Alle Aufgaben, die überflüssige Adfinis- Benutzerkonten löschen.
  • role::users:customer: Alle Aufgaben, die die Kundenbenutzerkonten einrichten.
  • role::users:default: Alle Aufgaben, die das Standardbenutzerkonto bereinigen.

Unterstützungspolitik

Nur die neueste Version wird gewartet und unterstützt (siehe die Tags-Seite).

Sobald eine neue Version veröffentlicht wird, erhält der vorherige Versionsbranch keine Fehlerbehebungen mehr.

Über das Projekt

Create and remove posix users and groups, add or remove ssh keys

Installieren
ansible-galaxy install adfinis-sygroup.users
GitHub Repository
Lizenz
Unknown
Downloads
3.5k
Besitzer
Adfinis SyGroup was rebranded to Adfinis, follow the link below: