GROG.user
ユーザー管理
ユーザーを管理するためのロールです。
このロールと一緒に使うように設計されたロールは以下の通りです:
- authorized-key - 認可キーを管理するためのロール。
- sudo - sudo権限を管理するためのロール。
management-user ロールは、これらのロールを1つにまとめた使いやすいロールです。
要件
- ホストはansibleの使用ためにブートストラップされている必要があります(Pythonなどが必要)。
- ルート権限が必要です(
become: yes
を設定)。 - ホスト上で
useradd
、userdel
およびusermod
が利用可能である必要があります。
ロール変数
変数 | 説明 | デフォルト値 |
---|---|---|
user_list |
ユーザーのリスト (詳細を参照!) | [] |
user_list_host |
ユーザーのリスト (詳細を参照!) | [] |
user_list_group |
ユーザーのリスト (詳細を参照!) | [] |
user_append |
append のデフォルト値 |
no |
user_createhome |
createhome のデフォルト値 |
yes |
user_force |
force のデフォルト値 |
no |
user_generate_ssh_key |
generate_ssh_key のデフォルト値 |
no |
user_move_home |
move_home のデフォルト値 |
no |
user_none_unique |
none_unique のデフォルト値 |
no |
user_remove |
remove のデフォルト値 |
no |
user_shell |
shell のデフォルト値 |
'/bin/sh' |
user_ssh_key_bits |
ssh_key_bits のデフォルト値 |
4096 |
user_ssh_key_file |
ssh_key_file のデフォルト値 |
'.ssh/id_rsa' |
user_system |
system のデフォルト値 |
no |
user_update_password |
パスワードが変更された場合に更新するかどうか | always |
user_list
の詳細
user_list
、user_list_host
、user_list_group
は、ユーザーを管理する際に統合されます。ホストやグループリストを利用して、ホストごとまたはホストのグループごとにユーザーを指定できます。
ユーザーリストでは、管理すべきユーザーを定義できます。リスト内の各項目には以下の属性を持たせることができます:
変数 | 説明 | 必須 | デフォルト |
---|---|---|---|
append |
グループにのみ追加しますか? | no | user_append |
comment |
ユーザーの説明(GECOS) | no | / |
createhome |
ホームディレクトリを作成しますか? | no | user_createhome |
expires |
有効期限 | no | / |
force |
ユーザー削除時に--forceオプションを使用しますか | no | user_force |
generate_ssh_key |
sshキーを生成しますか? | no | user_generate_ssh_key |
group |
ユーザーのプライマリグループ | no | / |
groups |
ユーザーのグループのリスト | no | / |
home |
ユーザーのホームディレクトリ | no | / |
login_class |
BSDシステムのログインクラス | no | / |
move_home |
ホームディレクトリを移動しますか | no | user_move_home |
name |
ユーザー名 | yes | / |
non_unique |
一意でないUIDを許可しますか | no | user_none_unique |
password |
ユーザーのパスワード | no | / |
remove |
ユーザー削除時に--removeオプションを使用しますか | no | user_remove |
shell |
ユーザーのシェル | no | user_shell |
ssh_key_bits |
SSHキーのサイズ | no | user_ssh_key_bits |
ssh_key_comment |
SSHキーのコメント | no | / |
ssh_key_file |
SSHキーのファイル | no | user_ssh_key_file |
ssh_key_passphrase |
SSHキーのパスフレーズ | no | / |
ssh_key_type |
SSHキーのタイプ | no | rsa |
state |
ユーザーの状態 | no | 'present' |
system |
システムアカウントですか? | no | user_system |
uid |
ユーザーID | no | / |
update_password |
変更されていればパスワードを更新しますか? | no | user_update_password |
例 user_list
user_list:
- name: user1
- name: user2
uid: 1001
groups:
- test
- sudo
- name: user3
uid: 1002
state: absent
依存関係
なし。
例のプレイブック
---
- hosts: servers
roles:
- { role: GROG.user, become: yes }
group_vars/servers.yml
の中:
user_list_group:
- name: user
uid: 1001
- name: test
state: absent
貢献
ご意見やアイデア、変更などは歓迎です!
著者
ライセンス
MIT