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 はサポートされていません。
前提条件
- アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成できます。
- Azure DevOps 組織。 無料 または Azure DevOps Server にサインアップします。
- DevOps プロジェクト。 まだない場合は、プロジェクトを作成します。
- プロジェクトの Azure Resource Manager サービス接続 。
Key Vault を作成します
Azure Key Vault を作成します。
- Azure Portal で、 [リソースの作成] を選択します。
- Key Vault を検索して選択し、Create を選択します。
- サブスクリプションを選択します。
- 既存のリソース グループを選択するか、新しいリソース グループを作成します。
- キー コンテナーの名前を入力します。
- リージョンを選択します。
- Access と構成 タブを選択します。
- [コンテナー アクセス ポリシー] を選択します。
- プリンシパルとしてアカウントを選択します。
- [確認および作成] 、 [作成] の順に選択します。
キー コンテナーにリンクされた変数グループを作成する
- Azure DevOps プロジェクトで、[パイプライン]>[ライブラリ]>[+ 変数グループ] を選択します。
- [変数グループ] ページで、変数グループの名前と説明 (オプション) を入力します。
- [シークレットを Azure Key Vault から変数としてリンクする] トグルを有効にします。
- サービス接続を選択し、 Authorize を選択します。
- キー コンテナー名を選択し、コンテナー名の横にある Authorize を選択して、Azure DevOps がキー コンテナーにアクセスできるようにします。
- + 追加を選択し、シークレットの選択画面で、コンテナーからこの変数グループへのマッピング用のシークレットを選択し、OK を選択します。
- [保存] を選択して、シークレット変数グループを保存します。
Note
サービス接続には、キー コンテナーに対する少なくとも Get および List アクセス許可が必要です。このアクセス許可は、前の手順で承認できます。 次の手順に従って、Azure portal からこれらのアクセス許可を付与することもできます。
- Key Vault の [設定] を開き、アクセス構成]>[アクセス ポリシーに移動] を選択します。
- [アクセス ポリシー] ページで、Azure Pipelines プロジェクトが少なくとも Get および List アクセス許可を持つ [アプリケーション] の下に一覧表示されていない場合は、[作成] を選択します。
- [シークレットのアクセス許可] で、[Get] および [List] を選択し、[次へ] を選択します。
- プリンシパルを選択し、 Next を選択します。
- [次へ] をもう一度選択して設定を確認してから、[作成] を選択します。
詳細については、「Azure Key Vault のシークレットを使用する」を参照してください。