adfinis.users

ユーザー

この役割は、顧客およびAdfinisのユーザーアカウントを設定します。

要件

この役割では、システム上にsudo権限を持つ初期の非ルートユーザーが存在することを前提としています({{users_default_user}}、下記の役割変数を参照)。

そのユーザーは初期のユーザーアカウント設定に使用され、その後削除されます。この削除は、この役割の最後のタスクで行われます(つまり、初回の実行は問題ありませんが、繰り返すとログインに失敗します)。

したがって、プレイブック(または一連のプレイブック)では、この役割を2つのバリアントで適用することをお勧めします。

  1. 最初は、remote_user: {{users_default_user}}を使用して適用します。

  2. その後、目的のユーザー(個人アカウントまたは許可されている場合はroot)で適用します。

初期設定用のプレイブック/プレイと、継続的管理用のプレイブック/プレイを保持することを推奨します。

役割の依存関係

(なし)

役割の変数

必須

  • users_root_password_salt (文字列, デフォルト: 未設定):
    ルートパスワードをハッシュ化するために使用されるソルト。
    : users_root_passwordが設定され、users_root_password_is_hashedがfalseの場合のみ必要です。

  • users_customer_group (文字列):
    すべての顧客ユーザーアカウントが追加されるシステムグループの名前。
    : users_customerが空でない場合のみ必要です。

任意

  • users_root_password (文字列, デフォルト: 未設定):
    これが未設定の場合、ルートパスワードは変更されません。
    設定されていてusers_root_password_is_hashedがfalseの場合、これは平文のパスワードであり、users_root_password_saltも設定する必要があります。
    設定されていてusers_root_password_is_hashedがtrueの場合、これはハッシュ化されたパスワード(ansible.builtin.password_hashによって生成されたもの)と見なされます。

  • users_root_password_is_hashed (ブール値, デフォルト: false):
    trueに設定すると、users_root_passwordはすでにハッシュ化されていると見なされます(この場合、users_root_password_saltは必要ありません)。

  • users_root_authorized_keys (リスト, デフォルト: []):
    rootとしてログインするためのSSH公開鍵が与えられます。
    各リスト要素は以下のプロパティを持つオブジェクトです:

    • key (文字列, 必須):
      鍵データ自体。
    • comment (文字列, 任意, デフォルト: 未設定):
      鍵行に付加されるコメント(通常はuser@host)。
    • description (文字列, 任意, デフォルト: 未設定):
      鍵行の上にコメントとして記載される人間が読める説明。
    • options (文字列, 任意, デフォルト: 未設定):
      鍵行の前に付加される鍵オプションの文字列。
  • users_adfinis (リスト, デフォルト: []):
    設定されるAdfinisユーザーアカウント。各ユーザーは{{users_adfinis_group}}のシステムグループに追加されます。逆に、この変数にリストされていない既存の非システムユーザーは削除されます
    各リスト要素は以下のプロパティを持つオブジェクトです:

    • username (文字列, 必須):
      ユーザーアカウント名。
    • authorized_keys (リスト, デフォルト: []):
      rootとしてログインするためのSSH公開鍵が与えられます。
      各リスト要素はusers_root_authorized_keysで説明されたプロパティを持つオブジェクトです。
  • users_adfinis_group (文字列, デフォルト: adfinis):
    すべてのAdfinisユーザーアカウントが追加されるシステムグループの名前。

  • users_adfinis_ssh_pubkey_options (文字列, デフォルト: 未設定):
    すべての鍵行の前に付加される鍵オプションの文字列。

  • users_adfinis_homedir_mode (ファイルパーミッションモード, デフォルト: 0700):
    各Adfinisユーザーのホームディレクトリのファイルパーミッションモード。
    : Jinja2に関連する歴史的な問題のため、モードの8進表現は文字列として渡すか(不適切な変換を避けるため)、またはこのAnsibleオプションこちらをtrueに設定する必要があります。

  • users_adfinis_unrestricted_sudo (ブール値, デフォルト: true):
    Adfinisユーザーに制限のないsudo権限が付与されるかどうか。

  • users_adfinis_user_remove_home (ブール値, デフォルト: false):
    リストに載っていないAdfinisアカウントを削除する際に、そのホームディレクトリも削除するかどうか。

  • users_customer (リスト, デフォルト: []):
    設定される顧客ユーザーアカウント。各ユーザーは{{users_customer_group}}のシステムグループに追加されます。
    各リスト要素はusers_adfinisで説明されたプロパティを持つオブジェクトです。

  • users_customer_homedir_mode (ファイルパーミッションモード, デフォルト: 0755):
    各顧客ユーザーのホームディレクトリのファイルパーミッションモード。
    デフォルトは全世界に読み取り可能にするため、顧客がsudo -uを使用して他のユーザーとしてコマンドを実行し、なおかつホームディレクトリにファイルを渡せるようにしています。
    : Jinja2に関連する歴史的な問題のため、モードの8進表現は文字列として渡すか、このAnsibleオプションこちらをtrueに設定する必要があります。

  • users_customer_unrestricted_sudo (ブール値, デフォルト: false):
    顧客ユーザーに制限のないsudo権限が付与されるかどうか。

  • users_default_user (文字列, デフォルト: adfinis):
    システム上に最初に存在する非ルートユーザーアカウントの名前で、削除される予定です。

  • users_default_user_remove_home (ブール値, デフォルト: false):
    最初に存在する非ルートユーザーアカウントのホームディレクトリも削除するかどうか。

役割のタグ

  • init: role::users:rootrole::users:adfinisを組み合わせたもの。
  • role::users: この役割のすべてのタスク。
  • role::users:root: ルートユーザーアカウントを設定するすべてのタスク。
  • role::users:adfinis: Adfinisユーザーアカウントを設定するすべてのタスク。
  • role::users:adfinis:create: Adfinisユーザーアカウントを設定するすべてのタスク(削除なし)。
  • role::users:adfinis:delete: 不要なAdfinisユーザーアカウントを削除するすべてのタスク。
  • role::users:customer: 顧客ユーザーアカウントを設定するすべてのタスク。
  • role::users:default: 初期ユーザーアカウントをクリーンアップするすべてのタスク。

サポートポリシー

最新のリリースのみが保守およびサポートされます(タグページを参照)。

新しいリリースが作成されると、以前のリリースブランチはバグフィックスを受け取らなくなります。

プロジェクトについて

Set up root and user accounts

インストール
ansible-galaxy install adfinis.users
ライセンス
Unknown
ダウンロード
176
所有者
Potential. Unlocked.