24.2. Ansible を使用して IdM の標準ユーザー vault でシークレットをアーカイブする手順
以下の手順に従って、Ansible Playbook を使用してパーソナル vault に機密情報を保存します。この例では、idm_user ユーザーは my_vault という名前の vault に password.txt という名前で機密情報が含まれるファイルをアーカイブします。
前提条件
- Ansible コントローラー (手順の内容を実行するホスト) に ansible-freeipa パッケージがインストールされている。
- idm_user のパスワードを知っている。
- IdM_user が所有者であるか、my_vault のメンバーユーザーである。
- password.txt (my_vault にアーカイブするシークレット) にアクセスできる。
手順
/usr/share/doc/ansible-freeipa/playbooks/vault
ディレクトリーに移動します。$ cd /usr/share/doc/ansible-freeipa/playbooks/vault
インベントリーファイルを開き、設定する IdM サーバーが
[ipaserver]
セクションに記載されていることを確認します。たとえば、Ansible に対して server.idm.example.com を設定するように指示するには、次のコマンドを実行します。[ipaserver] server.idm.example.com
Ansible Playbook の data-archive-in-symmetric-vault.yml ファイルのコピーを作成して symmetric を standard に置き換えます。以下に例を示します。
$ cp data-archive-in-symmetric-vault.yml data-archive-in-standard-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 --vault-password-file=password_file -v -i inventory.file data-archive-in-standard-vault-copy.yml