第24章 Ansible を使用した IdM ユーザー Vault の管理: シークレットの保存および取得
この章では、Ansible vault モジュールを使用して Identity Management でユーザー Vault を管理する方法を説明します。具体的には、ユーザーが Ansible Playbook を使用して以下の 3 つのアクションを実行する方法を説明しています。
異なる IdM クライアント 2 台から保存と取得が可能です。
前提条件
- Key Recovery Authority (KRA) Certificate System コンポーネントが IdM ドメインの 1 つ以上のサーバーにインストールされている。詳細は IdM での Key Recovery Authority (KRA) のインストール を参照してください。
24.1. Ansible を使用して IdM に標準ユーザー Vault を存在させる手順 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順に従って、Ansible Playbook を使用して 1 つ以上のプライベート Vault を持つ Vault コンテナーを作成し、機密情報を安全に保存します。以下の手順で使用する例では、idm_user ユーザー は my_vault という名前の標準タイプの Vault を作成します。標準タイプの Vault では、ファイルへのアクセス時に idm_user を認証する必要がありません。idm_user は、ユーザーがログインしている IdM クライアントからファイルを取得できます。
前提条件
次の要件を満たすように Ansible コントロールノードを設定した。
- Ansible バージョン 2.13 以降を使用している。
-
ansible-freeipaパッケージをインストールしている。 - この例では、~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を使用して Ansible インベントリーファイル を作成したことを前提としている。
-
ターゲットノード (
ansible-freeipaモジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。 - idm_user のパスワードを知っている。
手順
MyPlaybooks ディレクトリーに移動します。
cd ~/MyPlaybooks/
$ cd ~/MyPlaybooks/Copy to Clipboard Copied! Toggle word wrap Toggle overflow /usr/share/doc/ansible-freeipa/playbooks/vault/ensure-standard-vault-is-present.yml Ansible Playbook ファイルのコピーを作成します。以下に例を示します。
cp /usr/share/doc/ansible-freeipa/playbooks/vault/ensure-standard-vault-is-present.yml ensure-standard-vault-is-present-copy.yml
$ cp /usr/share/doc/ansible-freeipa/playbooks/vault/ensure-standard-vault-is-present.yml ensure-standard-vault-is-present-copy.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - ensure-standard-vault-is-present-copy.yml ファイルを開いて編集します。
ipavaultタスクセクションに以下の変数を設定して、ファイルを調整します。-
ipaadmin_principal変数は idm_user に設定します。 -
ipaadmin_password変数は idm_user のパスワードに設定します。 -
user変数は idm_user に設定します。 -
name変数は my_vault に設定します。 vault_type変数は standard に設定します。今回の例で使用するように変更した Ansible Playbook ファイル:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
- ファイルを保存します。
Playbook を実行します。
ansible-playbook -v -i inventory.file ensure-standard-vault-is-present-copy.yml
$ ansible-playbook -v -i inventory.file ensure-standard-vault-is-present-copy.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow