Google Cloud Secret Managerとの同期
KeeperボルトのシークレットをGCPシークレットマネージャーと同期

概説
KeeperシークレットマネージャーCLIツールのsync
コマンドを使用すると、Keeperボルトにあるシークレットを、対象のGCP Secret Managerプロジェクトへ上書きして転送できます。これにより、GCP上のサービスやスクリプトで使用するシークレットの信頼できる唯一の情報源としてKeeperボルトを利用できます。
機能
KeeperボルトのシークレットをGCP Secret Managerの信頼できる情報源として利用
GCP で使用中のスクリプトやサービスに、Keeperボルトのシークレットをシームレスに統合
要件
Keeperシークレットマネージャーへのアクセス (詳細は、クイックスタートガイドをご参照ください)
Keeperサブスクリプションでシークレットマネージャーアドオンが有効化されていること
シークレットマネージャー関連ポリシーが有効化されたロールを割り当てられたメンバーシップ
シークレットが共有されたKeeperシークレットマネージャーアプリケーション
アプリケーションの作成手順については、クイックスタートガイドをご参照ください
GCP Secret Managerを使用するGCPアカウント、オプションでIAMサービスアカウントの認証情報を作成する権限
セットアップ
1. KeeperシークレットマネージャーCLIを設定
KSM CLIツールを構成するには、Keeperシークレットマネージャーのワンタイムアクセストークンを使用してプロファイルを作成します。
以下のコマンドでデフォルトプロファイルを初期化できます。
複数のプロファイルの作成およびその他のオプションについては、プロファイルのドキュメントをご参照ください。
2. GCPのアクセス権限を設定
KSMとGCPを同期するには、GCP Secret Manager側で、Secret Manager Admin
ロールが割り当てられたIAM認証情報が必要です (プロジェクトまたはサービスアカウント単位)。
アクセス制御の詳細
サービスアカウント認証情報の作成方法 (任意)
3. GCP認証情報レコードの作成
KSM CLIは、シークレットの設定に使用するGCPサービスアカウントの認証情報を必要とします。 これらの認証情報はKeeperレコードに保存され、CLIからSecrets Manager経由で参照されます。
必要なフィールドラベル
Google Cloud Project ID
Google Application Credentials
(オプション)
方法 1: GCP認証情報カスタムレコードタイプの作成
必要なフィールドを使用してカスタムのレコードタイプを作成できるため、レコードの作成が簡単かつシンプルになります。
Keeperボルトで [カスタムレコードタイプ] タブに移動して、[タイプの作成] をクリックします。 正しいフィールドラベルを持つ伏せ字項目を使用して新しいレコードタイプを作成し、[発行] をクリックします。

GCP認証情報タイプのレコードを新規作成し、対応するフィールドに詳細情報を入力します。

この新しいレコードを、シークレットマネージャーアプリケーションに関連付けられた共有フォルダに入れます。
方法 2: カスタムフィールドを追加
新しいレコードタイプを作成せずに認証情報レコードを作成するには、必要なフィールドをカスタムフィールドとして標準レコードに追加します。
任意のタイプの新しいレコードを作成し、必要なGCPフィールドごとに [伏せ字項目] タイプのカスタムフィールドを追加します。[ラベルの編集] をクリックして、対応するフィールド名のラベルを変更します。

次に、各カスタムフィールドに入力し、[保存] をクリックしてレコードを保存します。
4. 値のマッピングを作成
KSM CLI のsync
コマンドでは、コマンドに指定したマッピングをもとに、どのシークレットをどの名前でGCPに登録するかを判断します。マッピングごとに、Keeperボルトにある値が対応する名前でGCP Secret Managerに設定されます。
これらのマッピングは次の形式に従っています。
VALUE KEY
: GCP Secret Managerで値が割り当てられるキー名KEEPER NOTATION
: Keeperレコードから値を取得するための記法
Keeper表記法は、Keeperシークレットマネージャーが特定のレコードの値を指定するために使う記述方法です。 基本形式は以下のようになります。
以下の例では、指定されたUIDのレコード内にある「password」という名前の標準フィールドの値を参照しています。
詳細については、Keeper表記法のページをご参照ください。
完全なマッピング例
複数のマッピングを1つのsync
コマンドに追加できます。
Keeper記法で参照するレコードは、シークレットマネージャーアプリケーションと共有されている共有フォルダ内にある必要があります。正しく動作させるために、対象のレコードが必ず共有フォルダに配置されていることを確認してください。
これで、KSM同期を実行する準備ができました。
同期の実行
同期を実行するには、クレデンシャルレコードと値のマッピングを指定して、KSM CLIのsync
コマンドを使用します。
1. コマンドを構成
KSM syncコマンドをGCPタイプと組み合わせます。 以下のような形式になります。
2. ドライランを実行
sync
コマンドはドライラン (dry-run) に対応しており、GCP Secret Manager に対して実際の値を反映させずに、どの値が変更されるかを事前に確認できます。マッピングの記述が正しくできているかを確認するために、まずはドライランを実行することをおすすめします。
3. 同期を実行
準備ができたら、dry-runオプションを指定せずにsync
コマンドを実行します。 これにより、KeeperボルトからGCPシークレットマネージャーに値がプッシュされます
最終更新