次の方法で共有


Azure Key Vault で変数グループをシークレットにリンクする

この記事では、Azure キー コンテナーに格納されているシークレットにリンクする変数グループを作成する方法について説明します。 変数グループをキー コンテナーにリンクすることで、シークレットが安全に格納され、パイプラインが実行時に常に最新のシークレット値にアクセスできることを確認できます。

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

既存の Azure キー コンテナーにリンクし、選択したキー コンテナー シークレットを変数グループにマップする変数グループを作成できます。 シークレット名のみが変数グループにマップされ、シークレット値はマップされません。 パイプラインを実行すると、変数グループにリンクされ、実行時にコンテナーから最新のシークレット値がフェッチされます。

キー コンテナー内の既存のシークレットに加えられた変更は、変数グループを使用するすべてのパイプラインで自動的に使用できます。 ただし、シークレットがボールトに追加されたり、ボールトから削除されたりしても、関連付けられている変数グループは自動的に更新されません。 変数グループに含めるシークレットを明示的に更新する必要があります。

Key Vault では暗号化キーと証明書の Azure への格納と管理がサポートされていますが、Azure Pipelines 変数グループ統合ではキー コンテナー シークレットのマッピングのみがサポートされます。 暗号化キーと証明書はサポートされていません。

Note

Azure ロールベースのアクセス制御 (Azure RBAC) を使用する Key Vault はサポートされていません。

前提条件

Key Vault を作成します

Azure Key Vault を作成します。

  1. Azure Portal で、 [リソースの作成] を選択します。
  2. Key Vault を検索して選択し、Create を選択します。
  3. サブスクリプションを選択します。
  4. 既存のリソース グループを選択するか、新しいリソース グループを作成します。
  5. キー コンテナーの名前を入力します。
  6. リージョンを選択します。
  7. Access と構成 タブを選択します。
  8. [コンテナー アクセス ポリシー] を選択します。
  9. プリンシパルとしてアカウントを選択します。
  10. [確認および作成][作成] の順に選択します。

キー コンテナーにリンクされた変数グループを作成する

  1. Azure DevOps プロジェクトで、[パイプライン]>[ライブラリ]>[+ 変数グループ] を選択します。
  2. [変数グループ] ページで、変数グループの名前と説明 (オプション) を入力します。
  3. [シークレットを Azure Key Vault から変数としてリンクする] トグルを有効にします。
  4. サービス接続を選択し、 Authorize を選択します。
  5. キー コンテナー名を選択し、コンテナー名の横にある Authorize を選択して、Azure DevOps がキー コンテナーにアクセスできるようにします。
  6. + 追加を選択し、シークレットの選択画面で、コンテナーからこの変数グループへのマッピング用のシークレットを選択し、OK を選択します。
  7. [保存] を選択して、シークレット変数グループを保存します。

Azure Key Vault 統合での変数グループのスクリーンショット。

Note

サービス接続には、キー コンテナーに対する少なくとも Get および List アクセス許可が必要です。このアクセス許可は、前の手順で承認できます。 次の手順に従って、Azure portal からこれらのアクセス許可を付与することもできます。

  1. Key Vault の [設定] を開き、アクセス構成]>[アクセス ポリシーに移動] を選択します。
  2. [アクセス ポリシー] ページで、Azure Pipelines プロジェクトが少なくとも Get および List アクセス許可を持つ [アプリケーション] の下に一覧表示されていない場合は、[作成] を選択します。
  3. [シークレットのアクセス許可] で、[Get] および [List] を選択し、[次へ] を選択します。
  4. プリンシパルを選択し、 Next を選択します。
  5. [次へ] をもう一度選択して設定を確認してから、[作成] を選択します。

詳細については、「Azure Key Vault のシークレットを使用する」を参照してください。