User management (Answers)¶
Questions (Repost)¶
User name |
User ID |
Login password |
Group name |
---|---|---|---|
wwwuser01 |
10001 |
password01 |
www |
wwwuser02 |
10002 |
password02 |
www |
appuser01 |
20001 |
password01 |
app |
appuser02 |
20002 |
password02 |
app |
Design parameters¶
Create Group parameter sheets¶
---
- name: create/update group
group:
name: "{{ item.0 }}"
gid: "{{ item.1 }}"
with_together:
- "{{ group_name }}"
- "{{ group_id }}"
- "{{ group_action }}"
when: item.2 == 'present'
- name: create/update group
group:
name: "{{ item.0 }}"
gid: "{{ item.1 }}"
with_together:
- "{{ group_name }}"
- "{{ group_id }}"
- "{{ group_action }}"
when: item.2 == 'absent'
Item |
Description |
---|---|
group_name |
Group name |
group_id |
Group ID |
action |
Construction settings
present: Create/Update
absent: Delete
|
Tip
Tip

Setting item |
Item 1 setting item |
Item 2 setting item |
Item 3 setting item |
---|---|---|---|
Item name |
Group name |
Group ID |
State |
Item name(Rest API) |
group_name |
group_id |
state |
Input method |
String(Single line) |
Integer |
Pulldown selection |
Minimum value |
(No item) |
1000 |
(No item) |
Maximum value |
(No item) |
(No item) |
|
Maximum byte size |
32 |
(No item) |
(No item) |
Regular expression |
(No item) |
(No item) |
|
Select item |
(No item) |
(No item) |
Input:State:present-absent |
Reference item |
(No item) |
(No item) |
|
Default value |
|||
Required |
✓ |
✓ |
✓ |
Unique restriction |
✓ |
✓ |
|
Description |
|||
Remarks |
Item name |
Setting value |
---|---|
Item number |
(Automatic) |
Parameter sheet name |
Group |
Parameter sheet name(REST) |
groups |
Creation target |
Parameter sheet(With host/operation) |
Display order |
4 |
Use bundles |
Check the "Use" box(Activate) |
Last updated date/time |
(Automatic) |
Last updated by |
(Automatic) |
Create parameter sheet for users¶
---
- name: create user
user:
name: "{{ item.0 }}"
uid: "{{ item.1 }}"
group: "{{ item.2 }}"
comment: "{{ item.3 }}"
home: "{{ item.4 }}"
shell: "{{ item.5 }}"
password: "{{ item.6 | password_hash('sha512') }}"
with_together:
- "{{ user_name }}"
- "{{ user_id }}"
- "{{ group }}"
- "{{ comment }}"
- "{{ home_dir }}"
- "{{ login_shell }}"
- "{{ password }}"
- "{{ user_action }}"
- "{{ password_apply }}"
when: item.7 == 'present' and password_apply
- name: create user
user:
name: "{{ item.0 }}"
uid: "{{ item.1 }}"
group: "{{ item.2 }}"
comment: "{{ item.3 }}"
home: "{{ item.4 }}"
shell: "{{ item.5 }}"
with_together:
- "{{ user_name }}"
- "{{ user_id }}"
- "{{ group }}"
- "{{ comment }}"
- "{{ home_dir }}"
- "{{ login_shell }}"
- "{{ user_action }}"
- "{{ password_apply }}"
when: item.6 == 'present' and not password_apply
- name: delete user
user:
state: absent
name: "{{ item.0 }}"
remove: 'yes'
with_together:
- "{{ user_name }}"
- "{{ user_action }}"
when: item.1 == 'absent'
Item |
Description |
---|---|
user_name |
User name |
user_id |
User ID |
group_id |
Group ID |
comment |
Comment |
home_dir |
Home directory |
login_shell |
Login shell |
password |
Password |
action |
Construction settings
present: Create/Update
absent: Delete
|
password_apply |
Password settings when constructing
true: Will configure a password
false: Will not configure a password
|
Tip

Setting item |
Item 1 setting value |
Item 2 setting value |
Item 3 setting value |
Item 4 setting value |
Item 5 setting value |
---|---|---|---|---|---|
Item name |
User name |
User ID |
Password |
Password settings |
Group |
Item name(Rest API) |
user_name |
user_id |
password |
password_apply |
group |
Input method |
String(Single line) |
Integer |
Password |
Pulldown selection |
Pulldown selection |
Maximum byte size |
32 |
(No item) |
32 |
(No item) |
(No item) |
Regular expression |
(No item) |
(No item) |
(No item) |
(No item) |
|
Minimum value |
(No item) |
1000 |
(No item) |
(No item) |
(No item) |
Maximum value |
(No item) |
(No item) |
(No item) |
(No item) |
|
Select item |
(No item) |
(No item) |
(No item) |
Create Parameter sheet:Selection 2:True-False |
Input:Group:Group name |
Reference item |
(No item) |
(No item) |
(No item) |
||
Default value |
(No item) |
False |
|||
Required |
✓ |
✓ |
✓ |
✓ |
✓ |
Unique restriction |
✓ |
✓ |
|||
Description |
|||||
Remarks |

Setting item |
Item 6 setting value |
Item 7 setting value |
Item 8 setting value |
Item 9 setting value |
---|---|---|---|---|
Item name |
Home directory |
Login shell |
Comment |
State |
Item name(Rest API) |
home_dir |
login_shell |
comment |
state |
Input method |
String(Single line) |
String(Single line) |
String(Single line) |
Pulldown selection |
Maximum byte size |
128 |
32 |
128 |
(No item) |
Regular expression |
(No item) |
|||
Minimum value |
(No item) |
(No item) |
(No item) |
(No item) |
Maximum value |
(No item) |
(No item) |
(No item) |
(No item) |
Select item |
(No item) |
(No item) |
(No item) |
Input:State:present-absent |
Reference item |
(No item) |
(No item) |
(No item) |
|
Default value |
/bin/bash |
|||
Required |
✓ |
✓ |
✓ |
✓ |
Unique restriction |
||||
Description |
||||
Remarks |
Item name |
Setting value |
---|---|
Item number |
(Automatic) |
Parameter sheet name |
User |
Parameter sheet name(REST) |
users |
Creation target |
Parameter sheet(With host/operation) |
Display order |
3 |
Use bundles |
Check the "Use" box(Activate) |
Last updated date/time |
(Automatic) |
Last updated by |
(Automatic) |
Register operation target¶
Register device¶
Register operation steps¶
注釈
Register Movement¶

Movement name |
Ansible use information |
|
---|---|---|
Host specification method |
Header section |
|
User management |
IP |
※reference Header section |
- hosts: all
remote_user: "{{ __loginuser__ }}"
gather_facts: no
become: yes
Register Ansible Playbook¶
---
- name: create/update group
group:
name: "{{ item.0 }}"
gid: "{{ item.1 }}"
with_together:
- "{{ group_name }}"
- "{{ group_id }}"
- "{{ group_action }}"
when: item.2 == 'present'
- name: create/update group
group:
name: "{{ item.0 }}"
gid: "{{ item.1 }}"
with_together:
- "{{ group_name }}"
- "{{ group_id }}"
- "{{ group_action }}"
when: item.2 == 'absent'
---
- name: create user
user:
name: "{{ item.0 }}"
uid: "{{ item.1 }}"
group: "{{ item.2 }}"
comment: "{{ item.3 }}"
home: "{{ item.4 }}"
shell: "{{ item.5 }}"
password: "{{ item.6 | password_hash('sha512') }}"
with_together:
- "{{ user_name }}"
- "{{ user_id }}"
- "{{ group }}"
- "{{ comment }}"
- "{{ home_dir }}"
- "{{ login_shell }}"
- "{{ password }}"
- "{{ user_action }}"
- "{{ password_apply }}"
when: item.7 == 'present' and password_apply
- name: create user
user:
name: "{{ item.0 }}"
uid: "{{ item.1 }}"
group: "{{ item.2 }}"
comment: "{{ item.3 }}"
home: "{{ item.4 }}"
shell: "{{ item.5 }}"
with_together:
- "{{ user_name }}"
- "{{ user_id }}"
- "{{ group }}"
- "{{ comment }}"
- "{{ home_dir }}"
- "{{ login_shell }}"
- "{{ user_action }}"
- "{{ password_apply }}"
when: item.6 == 'present' and not password_apply
- name: delete user
user:
state: absent
name: "{{ item.0 }}"
remove: 'yes'
with_together:
- "{{ user_name }}"
- "{{ user_action }}"
when: item.1 == 'absent'

Playbook file name |
Playbook file |
---|---|
group |
|
user |
|
Link Movement and Ansible Playbook¶

Movement name |
Playbook file |
Include order |
---|---|---|
User management |
group.yml |
1 |
User management |
user.yml |
2 |
Substitute value auto registration settings¶

Parameter sheet(From) |
Registration method |
Movement name |
IaC変数(To) |
||
---|---|---|---|---|---|
Menu group:Menu:Item |
Substitute order |
Movement name:Variable name |
Substitute order |
||
Substitute value auto registration:Group:Group name |
1 |
Value type |
User management |
User management:group_name |
1 |
Substitute value auto registration:Group:Group ID |
1 |
Value type |
User management |
User management:group_id |
1 |
Substitute value auto registration:Group:State |
1 |
Value type |
User management |
User management:group_action |
1 |
Substitute value auto registration:Group:Group name |
2 |
Value type |
User management |
User management:group_name |
2 |
Substitute value auto registration:Group:Group ID |
2 |
Value type |
User management |
User management:group_id |
2 |
Substitute value auto registration:Group:State |
2 |
Value type |
User management |
User management:group_action |
2 |
... |
... |
... |
... |
... |
... |
Substitute value auto registration:Group:Group name |
5 |
Value type |
User management |
User management:group_name |
5 |
Substitute value auto registration:Group:Group ID |
5 |
Value type |
User management |
User management:group_id |
5 |
Substitute value auto registration:Group:State |
5 |
Value type |
User management |
User management:group_action |
5 |





Parameter sheet(From) |
Registration method |
Movement name |
IaC variables(To) |
||
---|---|---|---|---|---|
Menu group:Menu:Item |
Substitute order |
Movement name:Variable name |
Substitute order |
||
Substitute value auto registration:ユーザー:User name |
1 |
Value type |
User management |
User management:user_name |
1 |
Substitute value auto registration:ユーザー:User ID |
1 |
Value type |
User management |
User management:user_id |
1 |
Substitute value auto registration:ユーザー:パスワード |
1 |
Value type |
User management |
User management:password |
1 |
Substitute value auto registration:ユーザー:Password settings |
1 |
Value type |
User management |
User management:password_apply |
1 |
Substitute value auto registration:ユーザー:グループ |
1 |
Value type |
User management |
User management:group |
1 |
Substitute value auto registration:ユーザー:Home directory |
1 |
Value type |
User management |
User management:home_dir |
1 |
Substitute value auto registration:ユーザー:Login shell |
1 |
Value type |
User management |
User management:login_shell |
1 |
Substitute value auto registration:ユーザー:Comment |
1 |
Value type |
User management |
User management:comment |
1 |
Substitute value auto registration:ユーザー:State |
1 |
Value type |
User management |
User management:user_action |
1 |
Substitute value auto registration:ユーザー:User name |
2 |
Value type |
User management |
User management:user_name |
2 |
Substitute value auto registration:ユーザー:User ID |
2 |
Value type |
User management |
User management:user_id |
2 |
Substitute value auto registration:ユーザー:パスワード |
2 |
Value type |
User management |
User management:password |
2 |
Substitute value auto registration:ユーザー:Password settings |
2 |
Value type |
User management |
User management:password_apply |
2 |
Substitute value auto registration:ユーザー:グループ |
2 |
Value type |
User management |
User management:group |
2 |
Substitute value auto registration:ユーザー:Home directory |
2 |
Value type |
User management |
User management:home_dir |
2 |
Substitute value auto registration:ユーザー:Login shell |
2 |
Value type |
User management |
User management:login_shell |
2 |
Substitute value auto registration:ユーザー:Comment |
2 |
Value type |
User management |
User management:comment |
2 |
Substitute value auto registration:ユーザー:State |
2 |
Value type |
User management |
User management:user_action |
2 |
Substitute value auto registration:ユーザー:User name |
3 |
Value type |
User management |
User management:user_name |
3 |
Substitute value auto registration:ユーザー:User ID |
3 |
Value type |
User management |
User management:user_id |
3 |
Substitute value auto registration:ユーザー:パスワード |
3 |
Value type |
User management |
User management:password |
3 |
Substitute value auto registration:ユーザー:Password settings |
3 |
Value type |
User management |
User management:password_apply |
3 |
Substitute value auto registration:ユーザー:グループ |
3 |
Value type |
User management |
User management:group |
3 |
Substitute value auto registration:ユーザー:Home directory |
3 |
Value type |
User management |
User management:home_dir |
3 |
Substitute value auto registration:ユーザー:Login shell |
3 |
Value type |
User management |
User management:login_shell |
3 |
Substitute value auto registration:ユーザー:Comment |
3 |
Value type |
User management |
User management:comment |
3 |
Substitute value auto registration:ユーザー:State |
3 |
Value type |
User management |
User management:user_action |
3 |
Substitute value auto registration:ユーザー:User name |
4 |
Value type |
User management |
User management:user_name |
4 |
Substitute value auto registration:ユーザー:User ID |
4 |
Value type |
User management |
User management:user_id |
4 |
Substitute value auto registration:ユーザー:パスワード |
4 |
Value type |
User management |
User management:password |
4 |
Substitute value auto registration:ユーザー:Password settings |
4 |
Value type |
User management |
User management:password_apply |
4 |
Substitute value auto registration:ユーザー:グループ |
4 |
Value type |
User management |
User management:group |
4 |
Substitute value auto registration:ユーザー:Home directory |
4 |
Value type |
User management |
User management:home_dir |
4 |
Substitute value auto registration:ユーザー:Login shell |
4 |
Value type |
User management |
User management:login_shell |
4 |
Substitute value auto registration:ユーザー:Comment |
4 |
Value type |
User management |
User management:comment |
4 |
Substitute value auto registration:ユーザー:State |
4 |
Value type |
User management |
User management:user_action |
4 |
... |
... |
... |
... |
... |
... |
Substitute value auto registration:ユーザー:User name |
10 |
Value type |
User management |
User management:user_name |
10 |
Substitute value auto registration:ユーザー:User ID |
10 |
Value type |
User management |
User management:user_id |
10 |
Substitute value auto registration:ユーザー:パスワード |
10 |
Value type |
User management |
User management:password |
10 |
Substitute value auto registration:ユーザー:Password settings |
10 |
Value type |
User management |
User management:password_apply |
10 |
Substitute value auto registration:ユーザー:グループ |
10 |
Value type |
User management |
User management:group |
10 |
Substitute value auto registration:ユーザー:Home directory |
10 |
Value type |
User management |
User management:home_dir |
10 |
Substitute value auto registration:ユーザー:Login shell |
10 |
Value type |
User management |
User management:login_shell |
10 |
Substitute value auto registration:ユーザー:Comment |
10 |
Value type |
User management |
User management:comment |
10 |
Substitute value auto registration:ユーザー:State |
10 |
Value type |
User management |
User management:user_action |
10 |
機器登録¶
ユーザー追加作業の実施¶
作業概要の作成¶
作業実施日時 |
2024/04/04 12:00:00 |
作業対象 |
web01(RHEL8) |
作業内容 |
Webサーバーへユーザー追加作業 |
作業概要登録¶

オペレーション名 |
実施予定日時 |
---|---|
Webサーバーへユーザー追加作業 |
2024/04/04 12:00:00 |
パラメータ設定¶

ホスト名 |
オペレーション |
Substitute order |
パラメータ |
||
---|---|---|---|---|---|
オペレーション名 |
Group name |
Group ID |
状態 |
||
web01 |
2023/04/04 12:00:00_Webサーバーへユーザー追加作業 |
1 |
www |
10001 |
present |
web01 |
2023/04/04 12:00:00_Webサーバーへユーザー追加作業 |
2 |
app |
10002 |
present |


ホスト名 |
オペレーション |
Substitute order |
パラメータ |
||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
オペレーション名 |
User name |
User ID |
パスワード |
パスワード設定 |
グループ |
Home directory |
ログインシェル |
コメント |
状態 |
||
web01 |
2024/04/04 12:00:00_Webサーバーへユーザー追加作業 |
1 |
wwwuser01 |
10001 |
password01 |
True |
www |
/home/wwwuser01 |
/bin/bash |
Web server maintainer |
present |
web01 |
2024/04/04 12:00:00_Webサーバーへユーザー追加作業 |
2 |
wwwuser02 |
10002 |
password02 |
True |
www |
/home/wwwuser02 |
/bin/bash |
Web server maintainer |
present |
web01 |
2024/04/04 12:00:00_Webサーバーへユーザー追加作業 |
3 |
appuser01 |
20001 |
password01 |
True |
app |
/home/appuser01 |
/bin/bash |
Application server maintainer |
present |
web01 |
2024/04/04 12:00:00_Webサーバーへユーザー追加作業 |
4 |
appuser02 |
20002 |
password02 |
True |
app |
/home/appuser02 |
/bin/bash |
Application server maintainer |
present |
作業実行¶
事前確認
現在のサーバーの状態を確認しましょう。グループ一覧を確認します。# グループ一覧の取得 cat /etc/group|grep -E "www|app"
# 何も表示されない
ユーザー一覧を確認します。# ユーザー一覧の取得 cat /etc/passwd|grep -E "www|app"
# 何も表示されない
作業実行
作業実行 を押下します。から、User management Movement を選択し、次に、作業実行 を押下します。で、オペレーションに Webサーバーへユーザー追加作業 を選択し、画面が開き、実行が完了した後に、ステータスが「完了」になったことを確認します。

事後確認
再度サーバーに下記のグループとユーザーが設定されていることを確認しましょう。グループ一覧を確認します。# グループ一覧の取得 cat /etc/group|grep -E "app|www"
www:x:10001: app:x:10002:
ユーザー一覧を確認します。# ユーザー一覧の取得 cat /etc/passwd|grep -E "app|www"
wwwuser01:x:10001:10001:Web server mainterner:/home/wwwuser01:/bin/bash wwwuser02:x:10002:10001:Web server mainterner:/home/wwwuser02:/bin/bash appuser01:x:20001:10002:Application server mainterner:/home/appuser01:/bin/bash appuser02:x:20002:10002:Application server mainterner:/home/appuser02:/bin/bash
(参考) 既存のジョブフローへの追加¶
ジョブフローの作成
オペレーション登録
ホスト名のパラメータ登録 (パラメータ変更なし)
パッケージのパラメータ登録 (パラメータ変更なし)
グループのパラメータ登録
ユーザーのパラメータ登録
ジョブフロー実行
ジョブフローの編集と実行 (失敗例)¶
OUT |
IN |
---|---|
Start |
ホスト名設定 |
ホスト名設定 |
パッケージ管理 |
パッケージ管理 |
User management |
User management |
End |

ジョブフローの編集と実行 (成功例)¶
Movement |
オペレーション名 |
---|---|
ホスト名設定 |
RHEL8のホスト名変更作業 |
パッケージ管理 |
RHEL8のパッケージ管理 |
User management |
Webサーバーへユーザー追加作業 |
