adfinis.users

użytkownicy

Ta rola tworzy konta użytkowników dla klientów oraz użytkowników Adfinis.

Wymagania

Ta rola zakłada, że na systemie jest już początkowe konto użytkownika nie-root z uprawnieniami sudo ({{users_default_user}}, patrz Zmienna Roli poniżej).

To konto jest używane do początkowego skonfigurowania kont użytkowników, a następnie jest usuwane. Usunięcie następuje w ostatnim zadaniu tej roli (więc początkowe uruchomienie zadziała dobrze, ale jeśli zostanie powtórzone, logowanie nie powiedzie się).

W playbooku (lub serii playbooków) zaleca się stosowanie tej roli w dwóch wariantach:

  1. Po raz pierwszy, zastosuj z remote_user: {{users_default_user}}.

  2. Następnie, zastosuj z zamierzonym użytkownikiem (albo kontem osobistym, albo root, jeśli jest to dozwolone).

Zaleca się zachowanie jednego playbooka do początkowej konfiguracji, a drugiego do ciągłego zarządzania.

Zależności Roli

(brak)

Zmienne Roli

Obowiązkowe

  • users_root_password_salt (string, domyślnie: nieustawione):
    Sól do użycia przy haszowaniu hasła roota.
    Uwaga: Wymagana tylko wtedy, gdy users_root_password jest ustawione i users_root_password_is_hashed jest fałszywe.

  • users_customer_group (string):
    Nazwa systemowej grupy, do której dodawane są wszystkie konta klientów.
    Uwaga: Wymagana tylko wtedy, gdy users_customer nie jest pusty.

Opcjonalne

  • users_root_password (string, domyślnie: nieustawione):
    Jeśli to jest nieustawione, hasło roota nie zostanie zmienione.
    Jeśli to jest ustawione i users_root_password_is_hashed jest fałszywe, to jest to hasło w czystym tekście, a users_root_password_salt również musi być ustawione.
    Jeśli to jest ustawione i users_root_password_is_hashed jest prawdziwe, to jest uznawane za hasło haszowane (wyprodukowane przez ansible.builtin.password_hash).

  • users_root_password_is_hashed (boolean, domyślnie: false):
    Jeśli ustawione na true, users_root_password uznaje się za już haszowane (w tym przypadku users_root_password_salt nie jest wymagane).

  • users_root_authorized_keys (lista, domyślnie: []):
    Klucze publiczne SSH, którym przyznano autoryzację do logowania się jako root.
    Każdy element listy jest obiektem z następującymi właściwościami:

    • key (string, obowiązkowe):
      Dane klucza.
    • comment (string, opcjonalne, domyślnie: nieustawione):
      Komentarz, dodawany do linii klucza (zwykle użytkownik@host).
    • description (string, opcjonalne, domyślnie: nieustawione):
      Opis w języku ludzkim, umieszczany jako komentarz w pliku authorized_keys powyżej linii klucza.
    • options (string, opcjonalne, domyślnie: nieustawione):
      Ciąg opcji klucza, dodawany na początku linii klucza.
  • users_adfinis (lista, domyślnie: []):
    Konta użytkowników Adfinis do założenia. Każdy użytkownik zostanie dodany do grupy systemowej {{users_adfinis_group}}. Natomiast każdy istniejący użytkownik niesystemowy w tej grupie, który nie jest wymieniony w tej zmiennej, zostanie usunięty.
    Każdy element listy jest obiektem z następującymi właściwościami:

    • username (string, obowiązkowe):
      Nazwa konta użytkownika.
    • authorized_keys (lista, domyślnie: []):
      Klucze publiczne SSH, które otrzymają autoryzację do logowania się jako root.
      Każdy element listy jest obiektem z właściwościami opisanymi w users_root_authorized_keys.
  • users_adfinis_group (string, domyślnie: adfinis):
    Nazwa grupy systemowej, do której dodawane są wszystkie konta użytkowników Adfinis.

  • users_adfinis_ssh_pubkey_options (string, domyślnie: nieustawione):
    Ciąg opcji klucza, dodawany na początku wszystkich linii kluczy.

  • users_adfinis_homedir_mode (tryb uprawnień do plików, domyślnie: 0700):
    Tryb uprawnień do plików dla katalogu domowego każdego użytkownika Adfinis.
    Uwaga: Z powodu historycznego problemu z Jinja2, ósemkowe przedstawienie trybu musi być przekazane jako string (aby zapewnić, że nie zostanie niewłaściwie przekształcone), lub ta opcja Ansible musi być ustawiona na true.

  • users_adfinis_unrestricted_sudo (boolean, domyślnie: true):
    Czy użytkownicy Adfinis mają nielimitowane uprawnienia sudo.

  • users_adfinis_user_remove_home (boolean, domyślnie: false):
    Czy również usunąć katalog domowy podczas usuwania nie wymienionego konta Adfinis.

  • users_customer (lista, domyślnie: []):
    Konta użytkowników klientów do utworzenia. Każdy użytkownik zostanie dodany do grupy systemowej {{users_customer_group}}.
    Każdy element listy jest obiektem z właściwościami opisanymi w users_adfinis.

  • users_customer_homedir_mode (tryb uprawnień do plików, domyślnie: 0755):
    Tryb uprawnień do plików dla katalogu domowego każdego użytkownika klienta.
    Domyślnie pozwala na odczyt przez wszystkich, dzięki czemu klienci mogą używać sudo -u, aby wykonywać polecenia jako inni użytkownicy i przekazywać pliki w swoim katalogu domowym.
    Uwaga: Z powodu historycznego problemu z Jinja2, ósemkowe przedstawienie trybu musi być przekazane jako string (aby zapewnić, że nie zostanie niewłaściwie przekształcone), lub ta opcja Ansible musi być ustawiona na true.

  • users_customer_unrestricted_sudo (boolean, domyślnie: false):
    Czy użytkownicy klientów mają nielimitowane uprawnienia sudo.

  • users_default_user (string, domyślnie: adfinis):
    Nazwa początkowego istniejącego konta użytkownika nie-root w systemie, które ma być usunięte.

  • users_default_user_remove_home (boolean, domyślnie: false):
    Czy również usunąć katalog domowy początkowego istniejącego konta użytkownika nie-root.

Tagi Roli

  • init: Tak samo jak role::users:root i role::users:adfinis razem.
  • role::users: Wszystkie zadania w tej roli.
  • role::users:root: Wszystkie zadania, które tworzą konto użytkownika root.
  • role::users:adfinis: Wszystkie zadania, które tworzą konta użytkowników Adfinis.
  • role::users:adfinis:create: Wszystkie zadania, które tworzą konta użytkowników Adfinis (bez usuwania).
  • role::users:adfinis:delete: Wszystkie zadania, które usuwają zbędne konta użytkowników Adfinis.
  • role::users:customer: Wszystkie zadania, które tworzą konta użytkowników klientów.
  • role::users:default: Wszystkie zadania, które porządkują konto użytkownika domyślnego.

Polityka wsparcia

Tylko najnowsza wersja jest utrzymywana i wspierana (zobacz stronę Tagi).

Gdy pojawi się nowa wersja, wcześniejsza gałąź wersji nie będzie już otrzymywała żadnych poprawek błędów.

O projekcie

Set up root and user accounts

Zainstaluj
ansible-galaxy install adfinis.users
Licencja
Unknown
Pobrania
176
Właściciel
Potential. Unlocked.