シークレットマネージャーコマンド
Keeperシークレットマネージャープラットフォームを設定および管理するコマンド
概要
Keeperシークレットマネージャーは、DevOpsチームとエンジニアリングチームが特権アカウントへのアクセスを一元的に管理および制御するための、クラウドベースのゼロ知識プラットフォームです。以下は、シークレットマネージャーの一般的な使用例となります。
ソースコード、設定ファイル、CI/CDシステムからのハードコードされたクレデンシャルの削除
特権パスワード、APIキー、およびその他の管理対象シークレットへのアクセス保護
マシンやアプリケーションへのボルトアクセスの提供
オンデマンドで、またはスケジュールを組んでサービスアカウントの認証情報をローテーション
Keeperシークレットマネージャーでは、Keeperボルト内の特定のフォルダにアクセスする必要のある各対象環境に対して「アプリケーション」が作成されます。 アプリケーションに対して、ボルト内の1つまたは複数の共有フォルダやレコードへのアクセス権を付与できます。アプリケーションは、1つまたは複数の「クライアント」から利用できます。クライアントはシークレットマネージャーインフラストラクチャによって個別に認証および管理されます。
たとえば、Keeperの「アプリケーション」が運用システムとなり、運用システム内の個々のウェブサーバーがクライアントになる場合もあります。各クライアントは、リクエストの署名に使用するクライアントIDと秘密鍵を使用して、Keeperボルトに対して認証されて通信します。
本ページのコマンドを使用して、Keeperシークレットマネージャーアプリケーションとクライアントデバイスを設定します。
Keeperシークレットマネージャーのコマンド
対話型シェル、CLI、JSON構成ファイルのいずれを使用する場合でも、以下のコマンドがサポートされており、各コマンドでは追加のパラメータとオプションがご利用になれます。
特定のコマンドに関するヘルプを表示するには、以下のように入力します。
help <コマンド名>
secrets-manager コマンド形式
Keeperシークレットマネージャーのコマンドは、以下の形式に従います。
secrets-manager <コマンド> <サブコマンド>
たとえば、すべてのアプリケーションを一覧表示するには、以下のコマンドを実行します。
secrets-manager app list
以下は、すべてのsecrets-managerコマンドとその詳細の一覧です。
secrets-manager app list
アプリケーション一覧を表示。App UID、最終アクセス日時、割り当てられたレコード/フォルダ数を確認可能。
secrets-manager app get
アプリケーションの詳細情報 (デバイス情報を含む) を取得。
secrets-manager app create
新しいアプリケーションを作成。
secrets-manager app remove
アプリケーションを削除。
secrets-manager app share
アプリケーションおよび関連ゲートウェイ/構成を他のユーザーと共有。
secrets-manager app unshare
ユーザーからアプリケーションの共有を解除。
secrets-manager client add
アプリケーションに関連付けられたデバイスまたはマシンIDを作成。
secrets-manager client remove
デバイスを削除。
secrets-manager client revoke
クライアントIDを基にデバイスを失効させる。
secrets-manager share add
フォルダまたはレコードをアプリケーションに関連付け。
secrets-manager share remove
アプリケーションからフォルダまたはレコードの関連付けを解除。
secrets-manager app update
既存のシークレットマネージャーアプリケーションの名前を変更。
secrets-manager share update
アプリケーションに関連付け済みのシークレット (レコードまたは共有フォルダ) のアクセス権限を更新。
secrets-manager usage
使用状況の統計 (合計、詳細、デバイス別、サマリー、タイムライン) および課金サイクルの日付を表示。
APIフローの例
以下は、アプリケーションの作成、シークレットの割り当て、マシンデバイスの作成を行う一連のAPI操作例です。
アプリケーションを作成
secrets-manager app create <APPLICATION NAME>
新しいシークレットを作成
ボルトのユーザーインターフェースから実行できますが、ここではシークレットを作成し、共有フォルダを作成してから、そのシークレットを共有フォルダに移動することにします。以下はコマンドの例です。
フォルダをシークレットマネージャーアプリケーションで共有
クライアントにアプリケーションへのアクセスを許可
すべてのアプリケーションの一覧を取得
secrets-manager app list
個々のアプリケーションの詳細を表示
secrets-manager app get <APPLICATION NAME|APP UID>
コマンド
secrets-manager app createコマンド
コマンド
secrets-manager app create概要 クライアントをシークレットに関連付けるために使用する新しいアプリケーションを作成します
パラメータ
アプリケーションの名前
使用例
secrets-manager app getコマンド
コマンド
secrets-manager app get概要 指定したアプリケーションと、そのアプリケーションへのアクセスがあるユーザーに関する情報を表示します。
パラメータ
アプリケーションの名前またはUID
使用例
secrets-manager app removeコマンド
コマンド
secrets-manager app remove概要 アプリケーションを削除します
パラメータ
アプリケーションの名前またはUID
使用例
secrets-manager app shareコマンド
アプリケーションを他のユーザーと共有することで、そのユーザーは関連するゲートウェイ、デバイス、フォルダへのアクセスが可能になります。
コマンド
secrets-manager app share概要 アプリケーションと、それに関連するゲートウェイおよび構成を別のユーザーと共有します。
パラメータ
アプリケーションの名前またはUID
共有相手のメールアドレス
使用例
secrets-manager app unshareコマンド
コマンド
secrets-manager app unshare概要 指定したユーザーに対するアプリケーションの共有を解除します。
パラメータ
アプリケーションの名前またはUID
共有を解除する対象ユーザーのメールアドレス
使用例
secrets-manager app listコマンド
コマンド
secrets-manager app list概要 すべての作成済みアプリケーションを一覧表示します
使用例
secrets-manager share addコマンド
コマンド
secrets-manager share add概要 シークレット (レコードまたは共有フォルダ) をアプリケーションに追加します
スイッチ
--secret、-s<シークレットのUID> 共有するシークレット。フォルダまたはレコードUIDを指定できます--app、-a共有先のアプリケーション--editable、-eレコードの編集を許可します
使用例
secrets-manager share removeコマンド
コマンド
secrets-manager share remove概要 シークレット (レコードまたは共有フォルダ) をアプリケーションから削除します
スイッチ
--secret、-s<シークレットのUID> 削除するシークレット。フォルダまたはレコードUIDを指定できます--app、-a対象のアプリケーション
使用例
secrets-manager client addコマンド
コマンド
secrets-manager client add概要 アプリケーションへの接続に使用するクライアントをアプリケーションに追加します。このコマンドの出力は、シークレットマネージャーSDKを使用してクライアントデバイスを初期化するために使用するワンタイムトークンです。
スイッチ
--name<クライアント名> クライアント名 (デフォルトはランダムな10文字)--first-access-expires-in-min<分> 初回アクセスの有効期間 (デフォルトは60、最大は1440)--access-expire-in-min<分> クライアントアクセスの有効期間 (デフォルトは無期限)--unlock-ip最初に要求するデバイスに対してIPアドレスをロックしません--count<数> 生成するトークンの数 (デフォルトは1)--config-init<{json、b64、k8s}> ワンタイムトークンから設定文字列を初期化します
使用例 1
「Test 1」という名前の新しいデバイスを作成し、ワンタイムアクセストークンを生成します。
使用例 2
「Test 2」という名前の新しいデバイスを作成し、IPロックなしの完全に初期化されたJSON設定ファイルを生成します。この設定ファイルは、デバイスに直接読み込めます。
使用例 3
「Test 3」という名前の新しいデバイスを作成し、IPロックなしの完全に初期化されたbase64設定文字列を生成します。この設定ファイルは、JSON設定ファイルを使用する代わりに、単一の文字列としてデバイスに読み込めます。
使用例 4
「Test 4」という名前の新しいデバイスを作成し、IPロックなしの完全に初期化されたKubernetes設定を生成します。YAML出力は、ファイルにカットアンドペーストして適用し、Kubernetesシークレットとして作成できます。
secrets-manager client removeコマンド
コマンド
secrets-manager client remove概要 アプリケーションからクライアントを削除します
スイッチ
--clientアプリケーションから削除するクライアント--app、-aアプリケーション--force承認を求めません
使用例
secrets-manager client revokeコマンド
コマンド
secrets-manager client revoke概要 すべてのアプリケーションから指定したクライアントIDを検索し、失効させます。アプリケーションを特定できない紛失デバイスや漏洩デバイスを素早く失効させたいときに便利です。クライアントIDは、デバイスの設定ファイル内で「clientId」として確認できます。クライアントIDは、ボルトのユーザーインターフェースに表示される短縮版 (「Short ID」) でも指定できます。
スイッチ
--client<クライアントID> 失効させるクライアント--force承認を求めません
使用例
secrets-manager app updateコマンド
コマンド
secrets-manager app update概要 既存のシークレットマネージャーアプリケーションの名前を変更します。
パラメータ
アプリケーションの名前またはUID
--name/-n— アプリケーションの新しい名前
使用例
secrets-manager share updateコマンド
コマンド
secrets-manager share update概要 アプリケーションに関連付け済みのシークレット (レコードまたは共有フォルダ) のアクセス権限を更新します。
--editableでクライアントによるシークレットの編集を許可し、--readonlyで読み取り専用に制限します。このコマンドで共有のアクセス権限を更新します。スイッチ
--secret、-s<シークレットUID> — 更新するレコードまたは共有フォルダのUID--app、-a<アプリケーション名またはUID> — 共有を所有するアプリケーション--editable、-e— 共有を編集可に設定--readonly、-r— 共有を読み取り専用に設定
使用例
secrets-manager usageコマンド
コマンド
secrets-manager usage概要 合計、詳細、デバイス別、サマリー、タイムラインなど、KSMの使用状況集計と課金サイクルの日付、ARAMベースの集計を表示します。
スイッチ
使用例
最終更新

