Azure DevOps拡張機能
KeeperシークレットマネージャーのAzure DevOpsへの統合によるシークレットの動的な取得

機能
Azure DevOpsパイプラインからKeeperボルトのシークレットを取得
ビルド引数または環境変数としてシークレット認証情報を設定
Keeperボルトからセキュリティで保護されたファイルをコピー
Keeperシークレットマネージャーの機能一覧については、概要をご参照ください。
前提条件
本ページでは、シークレットマネージャーとAzure DevOpsの連携について取り扱います。本連携を利用するには、以下が必要です。
Keeperシークレットマネージャーへのアクセス(クイックスタートガイドをご参照ください)
Keeperのサブスクリプションでシークレットマネージャーアドオンが有効になっていること
シークレットマネージャーポリシーが有効なロールに所属していること
シークレットが共有されているKeeper シークレットマネージャーアプリケーション
アプリケーションの作成手順については、クイックスタートガイドをご参照ください
初期化済みのKeeper シークレットマネージャー構成
Azure DevOps連携では、JSON形式とBase64形式の構成を使用できます
インストール
Keeperシークレットマネージャー拡張機能のインストール
Visual Studio Marketplaceからダウンロードするか、「Keeper Secrets Manager」で検索してください。
ソースコードはGitHubリポジトリで公開されています。

組織を選択して [Download] をクリックし、Azure組織で拡張機能を有効にします。

Azure Pipelinesからシークレットにアクセス
Keeperボルトのシークレットにアクセスするには、Azure PipelinesのYAML設定ファイルにタスクを追加し、レコードから必要なフィールドを取得します。
シークレットのクエリには Keeper表記法 を使用し、構文は KeeperNotation > destination です。代入先はプレフィックス var:、out:、file: で指定します。以下の例をご参照ください。
v1.0.4以降の拡張機能では、UIDの代わりにレコードタイトルによる検索構文を使用できます。タイトルを使用する場合は、Keeper表記法のルールに従ってエスケープし、YAML形式の特殊文字エスケープ仕様にも従う必要があります。
Keeperシークレットマネージャータスクの作成
Keeperシークレットマネージャーのタスクは以下のとおりです。
この例では、6ya_fdc6XTsZ7i4x9Jcodg がレコードUIDです。タスクはタスクフォームで作成するか、手動で追加できます。
タスクフォームを使用したタスクの追加
タスクメニューで「Keeper Secrets Manager」を検索し、タスクフォームを開きます。

タスクフォームに入力してKeeperシークレットマネージャータスクを作成するには、以下が必要です。
Azure DevOps拡張機能では、JSON形式とBase64形式の構成を使用できます
1つ以上のシークレットクエリ(以下のクエリ構文をご参照ください)

Keeperシークレットマネージャー構成をパイプラインに直接コピーすることもできますが、Azure Pipelineからアクセス可能なAzure Key Vaultに構成を保管することをお勧めします。Azure Key Vaultの詳細は、Microsoftのドキュメントをご参照ください。
フォームを送信すると、設定にタスクが自動的に追加されます。
タスクを手動で追加
パイプライン設定にタスクを手動で追加するには、以下の構文に従います。
Keeperシークレットクエリ
Keeperボルトのシークレットに対するクエリでは、以下の構文を使います。
標準フィールド値を取得
構文
例
カスタムフィールド値を取得
構文
例
二要素コードを取得
構文
[UID]/field/oneTimeCode > [VARIABLE NAME]
例
ファイルを取得
構文
例
変数の型
Keeperボルトのシークレットをパイプラインの変数として保存する場合、用途に応じて以下の方法を選択できます。
OUT
out(デフォルト)を使うと、パイプライン内のすべてのジョブから参照できる変数にシークレットを設定できます。変数の型を指定しない場合は、デフォルトで out が使われます。
VAR
var を使うと、同じパイプラインジョブ内でのみ使用できるローカル変数にシークレットを設定できます。
FILE
file を使うと、ファイルにコンテンツが書き込まれます。Keeperボルトから証明書などを取得するときに使います。
環境変数
env を使うと、ビルドマシンから参照できる環境変数としてシークレットを設定できます。
まずシークレットをパイプライン変数に設定し、bashタスクの環境変数としてマッピングします。
使用例
Keeperからシークレットを取得
このパイプライン例では、Keeperボルトのシークレットを変数に設定して表示します。表示されるパスワードはマスクされます。
複数のジョブでシークレットを使用
この例では、Keeperからパスワードとファイルを取得し、別のジョブで利用します。
最終更新

