24.5. Ansible を使用して AD ユーザーが IdM を管理できるようにする手順
ansible-freeipa の idoverrideuser および group モジュールを使用して、信頼済み AD ドメインの Active Directory (AD) ユーザーのユーザー ID オーバーライドを作成し、そのユーザーに IdM ユーザーと同じ権限を付与することができます。この手順では、最初の Playbook タスクで AD に保存されているユーザーの ad_user@ad.example.com ID オーバーライドが追加される デフォルトの信頼ビュー ID ビューの例を使用します。次の Playbook タスクでは、ad_user@ad.example.com ID オーバーライドが IdM 管理者 グループにメンバーとして追加されます。その結果、AD 管理者が 2 つの異なるアカウントとパスワードを使用しなくても IdM を管理できるようになります。
前提条件
-
IdM
adminのパスワードを把握している。 - AD とのトラストをインストール している。
- ユーザー ID オーバーライドを追加しようとしているグループが、IdM にすでに存在する。
-
4.8.7 バージョン以降の IdM を使用している。サーバーにインストールされている IdM のバージョンを表示するには、
ipa --versionを実行します。 次の要件を満たすように Ansible コントロールノードを設定している。
- Ansible バージョン 2.13 以降を使用している。
- RHEL 8.10 以降を使用している。
-
ansible-freeipaパッケージをインストールしている。 - この例では、~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を使用して Ansible インベントリーファイル を作成したことを前提としている。
-
この例では、secret.yml Ansible Vault に
ipaadmin_passwordが保存されていることを前提としています。
- AD フォレストが IdM と信頼関係にある。この例では、AD ドメインの名前は ad.example.com であり、AD 管理者の完全修飾ドメイン名 (FQDN) は ad_user@ad.example.com です。
-
インベントリーファイル内の
ipaserverホストが、信頼コントローラーまたは信頼エージェントとして設定されている。 -
ターゲットノード (
ansible-freeipaモジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。
手順
~/MyPlaybooks/ ディレクトリーに移動します。
cd ~/MyPlaybooks/
$ cd ~/MyPlaybooks/Copy to Clipboard Copied! Toggle word wrap Toggle overflow ad_user@ad.example.com ユーザーオーバーライドをデフォルトの信頼ビューに追加するタスクを含む enable-ad-admin-to-administer-idm.yml Playbook を作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上記の例では、以下のようになります。
- ad_user@ad.example.com は、信頼が確立されている AD ドメインに保存されている AD ユーザーのユーザー ID オーバーライドです。
同じ Playbook 内の別の Playbook タスクを使用して、AD 管理者ユーザー ID オーバーライドを
adminsグループに追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上記の例では、以下のようになります。
-
adminsは、ad_user@ad.example.com ID オーバーライドを追加する IdM POSIX グループの名前です。このグループのメンバーには、完全な管理者権限があります。
-
- ファイルを保存します。
Ansible Playbook を実行します。Playbook ファイル、secret.yml ファイルを保護するパスワードを格納するファイル、およびインベントリーファイルを指定します。
ansible-playbook --vault-password-file=password_file -v -i inventory enable-ad-admin-to-administer-idm.yml
$ ansible-playbook --vault-password-file=password_file -v -i inventory enable-ad-admin-to-administer-idm.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow