35.11. Ansible を使用して、IdM クライアントのローカルサウンドカードへのユーザー ID オーバーライドアクセス権を付与する
ansible-freeipa
group
および idoverrideuser
モジュールを使用して、Identity Management (IdM) または Active Directory (AD) ユーザーを IdM クライアント上の audio
ローカルグループのメンバーにすることができます。これにより、IdM または AD ユーザーに、ホスト上のサウンドカードへの特権アクセスが付与されます。この手順で使用する例では、最初の Playbook タスクで Default Trust View
ID ビューに aduser@addomain.com ID オーバーライドを追加します。次の Playbook タスクで、RHEL ホスト上の audio
ローカルグループの GID に対応する GID 63 の audio グループを IdM に作成します。同時に、aduser@addomain.com ID オーバーライドを IdM オーディオグループにメンバーとして追加します。
前提条件
-
手順の最初の部分を実行する対象である IdM クライアントへの
root
アクセス権を持っている。この例では、これは client.idm.example.com です。 次の要件を満たすように Ansible コントロールノードを設定している。
- Ansible バージョン 2.14 以降を使用している。
-
Ansible コントローラーに
ansible-freeipa
パッケージがインストールされている。 - RHEL 9.4 以降を使用している。
- この例では、~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を使用して Ansible インベントリーファイル を作成したことを前提としている。
-
この例では、secret.yml Ansible vault に
ipaadmin_password
が保存されていることを前提としています。
-
AD フォレストが IdM と信頼関係にある。この例では、AD ドメインの名前は addomain.com であり、ローカルグループ
audio
に存在することを確認する AD ユーザーの完全修飾ドメイン名 (FQDN) は aduser@addomain.com です。 -
ターゲットノード (
ansible-freeipa
モジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。
手順
client.idm.example.com で、
/etc/nsswitch.conf
ファイルに[SUCCESS=merge]
を追加します。[...] # Allow initgroups to default to the setting for group. initgroups: sss [SUCCESS=merge] files
audio
ローカルグループの GID を特定します。$ getent group audio --------------------- audio:x:63
Ansible コントロールノードで、aduser@addomain.com ユーザーオーバーライドを Default Trust View に追加するタスクを含む add-aduser-to-audio-group.yml Playbook を作成します。
--- - name: Playbook to manage idoverrideuser hosts: ipaserver become: false tasks: - name: Add aduser@addomain.com user to the Default Trust View ipaidoverrideuser: ipaadmin_password: "{{ ipaadmin_password }}" idview: "Default Trust View" anchor: aduser@addomain.com
同じ Playbook 内の別の Playbook タスクを使用して、
GID
63 を持つグループ audio を IdM に追加します。aduser idoverrideuser をグループに追加します。- name: Add the audio group with the aduser member and GID of 63 ipagroup: ipaadmin_password: "{{ ipaadmin_password }}" name: audio idoverrideuser: - aduser@addomain.com gidnumber: 63
- ファイルを保存します。
Ansible Playbook を実行します。Playbook ファイル、secret.yml ファイルを保護するパスワードを格納するファイル、およびインベントリーファイルを指定します。
$ ansible-playbook --vault-password-file=password_file -v -i inventory add-aduser-to-audio-group.yml
検証
AD ユーザーとして IdM クライアントにログインします。
$ ssh aduser@addomain.com@client.idm.example.com
AD ユーザーのグループメンバーシップを確認します。
$ id aduser@addomain.com uid=702801456(aduser@addomain.com) gid=63(audio) groups=63(audio)
関連情報
-
idoverrideuser および ipagroup に関する
ansible-freeipa
アップストリームドキュメント - IdM でのローカルグループとリモートグループのグループマージの有効化