For the complete documentation index, see llms.txt. This page is also available as Markdown.

ワンタイムアクセストークン

デバイスの初期化に使用するKeeperシークレットマネージャーのワンタイムアクセストークン

概要

Keeperシークレットマネージャーは、「ワンタイムアクセストークン」を使用して鍵交換を行い、シークレットマネージャーAPIにアクセスする新しいクライアントデバイスを初期化します。各クライアントデバイスは、それぞれ専用のワンタイムアクセストークンを使用して初期化する必要があります。

ワンタイムアクセストークンは、KeeperコマンダーまたはKeeperボルトを使用して生成できます。 ワンタイムアクセストークンは、クライアントデバイスの作成時に生成されます。

ワンタイムアクセストークンの目的は、構成を生成することです。構成は複数の暗号化キーおよび識別子からなり、デバイスのセキュアストレージ (macOS Keychainなど) にローカル保存されるか、対象のCI/CDプラットフォームのシークレット保管に保存されます。

コマンダーを使用したトークンの生成

KeeperコマンダーCLI では、secrets-manager コマンドでKSMアプリケーション、デバイス、権限を管理できます。

1. アプリケーションを作成する

pencil-line

使用したいアプリケーションが既にある場合は、手順3に進みます。

secrets-manager app create を使用して、新しいシークレットマネージャーアプリケーションを作成します。

My Vault> secrets-manager app create DevOps
Application was successfully added

secrets-manager app list を使用すると、利用可能なアプリケーションの一覧を表示できます。

My Vault> secrets-manager app list

List all Secrets Manager Applications

Title              UID
-----------------  ----------------------
DevOps             fe6mv_ZBLqca35dBUTdNeQ
Examples           Xym5lhpSidvtk9VlmV_3dQ
Github Actions     L5FqK5DUJhxeCXp50nSkuw
Jenkind            R2jMVW_QwL3FsCJziotpLQ

2. アプリケーションを共有フォルダまたはレコードに関連付ける

アプリケーションにボルト内のレコードへのアクセスを許可するには、共有フォルダまたはレコードをアプリケーションに割り当てる必要があります。

コマンダーでは、以下のコマンドでアプリケーションに割り当てます。

必要に応じて --editable フラグを指定すると、アプリケーションに編集権限を付与できます。

以下の例では、「XXX」の部分をレコードまたは共有フォルダのUIDに置き換えます。

pencil-line

レコードUIDやフォルダUIDを確認するには、ls -l コマンドを使用します。このコマンドを実行すると、対応するUIDとともにレコードやフォルダの一覧が表示されます。

3. クライアントデバイスを作成する

アプリケーションは、1つ以上のクライアントデバイスで構成されます。ボルト内のレコードにアクセスするには、少なくとも1つのクライアントデバイスが必要です。

新しいクライアントデバイスを作成するには、secrets-manager client add --app <APPLICATION NAME> コマンドを使用します。

オプションとして、--name <NAME> を指定するとクライアントデバイス名を設定できます。また、--unlock-ip を指定すると、認証された任意のデバイスからの接続を許可できます。デフォルトでは、クライアントデバイスの外部IPアドレスに基づいてアクセスが制限されます。

クライアントデバイスの作成時に、ワンタイムアクセストークンが表示されます。

出力結果からワンタイムアクセストークンをコピーし、KeeperシークレットマネージャーSDKまたは各種インテグレーションを使用してデバイスを初期化してください。このトークンは、対象デバイスで一度使用すると再利用できません。アプリケーションに関連付けられたレコードへアクセスするために、必要な数だけクライアントデバイスを生成できます。

Keeperボルトを使用したトークンの生成

1. シークレットマネージャーに移動する

Keeperボルトのナビゲーションメニューから [シークレットマネージャー] を選択します。

2. 新しいアプリケーションを作成する、または既存のアプリケーションを使用する

新しいシークレットマネージャーアプリケーションを作成してワンタイムトークンを生成するには、まずシークレットマネージャータブから [アプリケーションを作成] を選択します。

新しいアプリケーションの名前 (例: 「Github Action」) を付け、アプリケーションがアクセスできるフォルダを選択します。複数のフォルダを選択できます。

pencil-line

アプリケーションの作成後に、フォルダやレコードを追加できます。

このアプリケーションに読み取り専用または編集権限を付与できます。必要に応じて [デバイスの外部WAN IPアドレス用初期リクエストをロック] にチェックを入れると、アプリケーションの最初のクライアントデバイスを、最初に接続したIPアドレスに制限できます。

3. ワンタイムアクセストークンを生成する

アプリケーションが作成されたら、[アクセストークンを生成] をクリックして、最初のクライアントデバイスを作成し、ワンタイムトークンを取得します。

出力結果からワンタイムアクセストークンをコピーし、KeeperシークレットマネージャーSDKまたは各種インテグレーションを使用してデバイスを初期化します。このトークンは、対象デバイスで一度使用すると再利用できません。アプリケーションに関連付けられたレコードへアクセスするために、必要な数だけクライアントデバイスを生成できます。

追加のデバイストークンの作成

デバイスは、[シークレットマネージャー] > [アプリケーション] > [デバイス] タブで管理します。新しいクライアントデバイスを作成するには、[デバイスの追加] をクリックします。この画面では、デバイスを初期化する以下の3つの方法から選べます。

  • ワンタイムアクセストークン

  • Base64構成

  • JSON構成

ワンタイムアクセストークンを選択した場合、対象のSDKまたはインテグレーションでは、このトークンを使って以降のAPI呼び出し用のローカル構成を生成する必要があります。代わりに、Base64またはJSON形式であらかじめ用意された構成を選択することもできます。

構成の生成

一部のサードパーティ製Keeperシークレットマネージャーインテグレーションでは、ワンタイムアクセストークンから構成を作成するのではなく、あらかじめ用意された構成が必要です。

シークレットマネージャー構成の作成方法については、こちらのページで取り扱います。

最終更新