24.2. Ansible を使用して IdM の標準ユーザー Vault でシークレットをアーカイブする手順
以下の手順に従って、Ansible Playbook を使用してパーソナル Vault に機密情報を保存します。この例では、idm_user ユーザーは my_vault という名前の Vault に password.txt という名前で機密情報が含まれるファイルをアーカイブします。
前提条件
次の要件を満たすように Ansible コントロールノードを設定した。
- Ansible バージョン 2.14 以降を使用している。
-
ansible-freeipaパッケージがインストールされました。 - この例では、~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を含む Ansible インベントリーファイル が作成されていることを前提としています。
-
ターゲットノード (
ansible-freeipaモジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。 - idm_user のパスワードを知っている。
- idm_user が所有者であるか、my_vault のメンバーユーザーである。
- password.txt (my_vault にアーカイブするシークレット) にアクセスできる。
手順
MyPlaybooks ディレクトリーに移動します。
$ cd ~/MyPlaybooks/Ansible Playbook ファイル( /usr/share/doc/ansible-freeipa/playbooks/vault/data-archive-in-symmetric-vault.yml )のコピーを作成します。以下に例を示します。
$ cp /usr/share/doc/ansible-freeipa/playbooks/vault/data-archive-in-symmetric-vault.yml data-archive-in-symmetric-vault-copy.yml- data-archive-in-standard-vault-copy.yml ファイルを開いて編集します。
ipavaultタスクセクションに以下の変数を設定して、ファイルを調整します。-
ipaadmin_principal変数は idm_user に設定します。 -
ipaadmin_password変数は idm_user のパスワードに設定します。 -
user変数は idm_user に設定します。 -
name変数は my_vault に設定します。 -
in変数は機密情報が含まれるファイルへのパスに設定します。 action変数は member に設定します。今回の例で使用するように変更した Ansible Playbook ファイル:
--- - name: Tests hosts: ipaserver gather_facts: false vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - ipavault: ipaadmin_principal: idm_user ipaadmin_password: idm_user_password user: idm_user name: my_vault in: /usr/share/doc/ansible-freeipa/playbooks/vault/password.txt action: member-
- ファイルを保存します。
Playbook を実行します。
$ ansible-playbook -v -i inventory.file data-archive-in-standard-vault-copy.yml