48.2. Ansible Playbook を使用して IdM に HBAC ルールが存在する状態にする
以下の手順に従って、Ansible Playbook を使用して Identity Management (IdM) にホストベースのアクセス制御 (HBAC) ルールが存在することを確認します。
前提条件
次の要件を満たすように Ansible コントロールノードを設定している。
- Ansible バージョン 2.13 以降を使用している。
-
ansible-freeipaパッケージをインストールしている。 - この例では、~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を使用して Ansible インベントリーファイル を作成したことを前提としている。
-
この例では、secret.yml Ansible Vault に
ipaadmin_passwordが保存されていることを前提としています。
-
ターゲットノード (
ansible-freeipaモジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。 - HBAC ルールに使用するユーザーとユーザーグループが IdM に存在する。詳細は、Ansible Playbook を使用したユーザーアカウントの管理 および Ansible Playbook を使用した IdM グループおよびグループメンバーの存在の確保 を参照してください。
- HBAC ルールを適用するホストおよびホストグループが IdM に存在する。詳細は、Ansible Playbook を使用したホストの管理 および Ansible Playbook を使用したホストグループの管理 を参照してください。
手順
inventory.fileなどのインベントリーファイルを作成して、そのファイルにipaserverを定義します。[ipaserver] server.idm.example.com
[ipaserver] server.idm.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow Ansible Playbook ファイルを作成して、存在させる HBAC ポリシーを定義します。この手順は、
/usr/share/doc/ansible-freeipa/playbooks/hbacrule/ensure-hbacrule-allhosts-present.ymlファイルのサンプルをコピーして変更し、簡素化できます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Playbook を実行します。
ansible-playbook --vault-password-file=password_file -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-new-hbacrule-present.yml
$ ansible-playbook --vault-password-file=password_file -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-new-hbacrule-present.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
- 管理者として IdM Web UI にログインします。
-
Policy
Host-Based-Access-Control HBAC Test の順に選択します。 - Who タブで idm_user を選択します。
- Accessing タブで client.idm.example.com を選択します。
- Via service タブで sshd を選択します。
- Rules タブで login を選択します。
- Run test タブで Run test ボタンをクリックします。ACCESS GRANTED が表示されると、HBAC ルールが正常に実装されています。