0Pricing
Ansible Academy · レッスン

--ask-vault-pass で実行時に復号する

Play にパスワードを渡します。

「--ask-vault-pass で実行時に復号する」はCoddyKit上の無料Ansible Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAnsible Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Ansible Academyコースには全4レッスンが含まれています。

適切なタイミングで復号する

Vault化されたシークレットはディスク上で暗号化されたままです。重要なのは、プレイがシークレットを読み取る必要があるタイミングで、正確にAnsibleへパスワードを渡すことです。🔑

パスワードをプロンプトで入力する

ansible-playbookに--ask-vault-passを追加すると、実行開始前にAnsibleがVaultのパスワードを1回尋ねます。

ansible-playbook site.yml --ask-vault-pass

1つのパスワードで実行全体を解除する

その1回の入力で、プレイが扱うすべてのVault化されたファイルとインライン値のロックが解除されます。Ansibleはそれらをメモリ内でのみ復号します。🧠

パスワードがないと即座に失敗する

パスワードを渡さずにVaultを必要とするプレイを実行すると、Ansibleは処理を始める前に明確な復号エラーを出して停止します。

ERROR! Attempting to decrypt but no vault secrets found

パスワードファイルを使う

自動実行では、入力する代わりに--vault-password-fileを指定します。そのファイルをGitに入れず、アクセスを厳しく制限してください。

ansible-playbook site.yml --vault-password-file ~/.vault_pass

ansible.cfgに設定する

毎回フラグを指定しないようにするには、ansible.cfgのvault_password_fileにパスワードファイルを設定します。

[defaults]
vault_password_file = ~/.vault_pass

環境変数を使う方法もある

ANSIBLE_VAULT_PASSWORD_FILE環境変数でも同じことができます。設定ファイルを編集できないCIで便利です。

export ANSIBLE_VAULT_PASSWORD_FILE=~/.vault_pass

複数のシークレットにVault IDを使う

--vault-idを使うと複数のパスワードを管理できます。それぞれにラベルを付け、開発環境と本番環境のシークレットに異なるキーを使用します。

ansible-playbook site.yml --vault-id prod@~/.vault_prod

ほかのコマンドも

同じフラグは、ansible-playbook だけでなく、ansible のアドホックコマンドや ansible-vault 自体でも使えます。

ansible all -m debug -a "msg={{ db_password }}" --ask-vault-pass

パスワードを安全に保管する

Vault の安全性は、そのパスワードの保管場所次第です。シークレットマネージャーまたはアクセス制限されたファイルを使い、決してコミットしないでください。

パスワードの取得元をスクリプト化する

Vault のパスワードファイルには、パスワードを出力する実行可能なスクリプトも使えます。これにより、Vault サーバーからシークレットを取得できます。

ansible-playbook site.yml --vault-password-file get-pass.sh

クイックチェック

Vault で暗号化された変数を読み込むプレイブックを実行し、パスワードを一度だけ入力したいとします。

まとめ

実行時には --ask-vault-pass、パスワードファイル、または環境変数を使ってシークレットのロックを解除します。Ansible はメモリ内でのみ復号します。✨

よくある質問

「--ask-vault-pass で実行時に復号する」レッスンは無料ですか?

はい。「--ask-vault-pass で実行時に復号する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Ansible Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Ansible Academyコースには全4レッスンが含まれています。

「--ask-vault-pass で実行時に復号する」で何を学びますか?

Play にパスワードを渡します。 ブラウザで直接実行するハンズオンコードでAnsible Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Ansible Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのAnsible Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「--ask-vault-pass で実行時に復号する」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このAnsible Academyレッスンでコードを書いて実行できますか?

はい。すべてのAnsible Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. ansible-vault create でファイルを暗号化する
  2. Vault ファイルの編集・表示・再暗号化
  3. 単一の変数をインラインで暗号化する
  4. --ask-vault-pass で実行時に復号する
← Ansible Academyに戻る