IBM Cloud Docs
Vault CLI を使用したキー値シークレットの管理

Vault CLI を使用したキー値シークレットの管理

既に HashiCorp Vault を使用している場合は、コマンド・ライン・インターフェース (CLI) を使用して IBM Cloud® Secrets Manager と対話し、キー値シークレットを管理できます。 すべての操作は、Vault CLI に使用可能なガイドラインに従います。

開始する前に、Vault CLI の構成 を行い、Vault コマンドを使用して Secrets Manager インスタンスにアクセスできるようにします。 Vault CLI の使用方法について詳しくは、Vault の資料を確認してください。

Secrets Manager の標準 CLI を使用するには、Secrets Manager CLI リファレンスを確認してください。

キー値シークレットの作成または更新

キー値シークレットのバージョンを作成します。

vault kv put [-format=FORMAT] ibmcloud/kv/SECRET_NAME [KEY_VALUE_PAIRS]

カスタム・グループ内にキー値シークレットのバージョンを作成します。

vault kv put [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME [KEY_VALUE_PAIRS]

前提条件

キーと値のシークレットを作成するには、ライターサービス役割が必要です。

コマンド・オプション

-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

キー値シークレットのペイロードを作成または更新します。

vault kv put ibmcloud/kv/example-kv-secret key1=value1 key2=value2

カスタム・グループ内のキー値シークレットのペイロードを作成または更新します。

vault kv put ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/example-kv-secret key1=value1 key2=value2

出力

kvシークレットの新規バージョンを作成するコマンドは、以下の出力を返します。

Key              Value
---              -----
created_time     2022-03-08T18:32:43.610242127Z
deletion_time    n/a
destroyed        false
version          2

キー値シークレットのバージョンの読み取り

キー値シークレットのバージョンを取得します。 要求が成功すると、指定されたバージョンのシークレットに関連付けられているシークレット・データが、他のメタデータとともに返されます。

vault kv get [-version=VERSION] [-format=FORMAT] ibmcloud/kv/SECRET_NAME

カスタム・グループ内のキー値シークレットのバージョンを取得します。

vault kv get [-version=VERSION] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

前提条件

キーと値のシークレットのバージョンを読み取るには、リーダーまたはライターのサービス役割が必要です。

コマンド・オプション

-バージョン
読み取り対象のバージョン。 省略した場合は、最新バージョンが返されます。
-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

キー値シークレットのバージョンを読み取ります。

vault kv get -version=1 ibmcloud/kv/my-test-kv-secret

カスタム・グループ内のキー値シークレットのバージョンを読み取ります。

vault kv get -version=1 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

出力

kvシークレットのバージョンを読み取るコマンドは、以下の出力を返します。

====== Metadata ======
Key              Value
---              -----
created_time     2022-03-04T17:08:34.406336489Z
deletion_time    n/a
destroyed        false
version          1

==== Data ====
Key     Value
---     -----
key1    value1

キー値シークレットの最新バージョンの削除

キー値シークレットの最新バージョンを削除します。 削除の取り消しコマンドを呼び出すことにより、削除を元に戻すことができます。

vault kv delete [-format=FORMAT] ibmcloud/kv/SECRET_NAME

カスタム・グループ内のキー値シークレットの最新バージョンを削除します。

vault kv delete [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

前提条件

キー値シークレットを削除するには、マネージャー・サービス・ロールが必要です。

コマンド・オプション

-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

キー値シークレットの最新バージョンを削除します。

vault kv delete -format=json ibmcloud/kv/my-test-kv-secret

カスタム・グループ内のキー値シークレットの最新バージョンを削除します。

vault kv delete -format=json ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

出力

kvシークレットの最新バージョンを削除するコマンドは、出力を返しません。

指定されたバージョンのキー値シークレットの削除

指定されたバージョンのキー値シークレットを削除します。 削除の取り消しコマンドを呼び出すことにより、削除を元に戻すことができます。

vault kv delete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/SECRET_NAME

カスタム・グループ内の指定されたバージョンのキー値シークレットを削除します。

vault kv delete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

前提条件

キー値シークレットを削除するには、マネージャー・サービス・ロールが必要です。

コマンド・オプション

-バージョン
削除するバージョン。
-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

指定されたキー値シークレットのバージョンを削除します。

vault kv delete -versions=2 ibmcloud/kv/my-test-kv-secret

カスタム・グループ内のキー値シークレットの指定されたバージョンを削除します。

vault kv delete -versions=2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

出力

指定されたkvシークレットのバージョンを削除するコマンドは、出力を返しません。

キー値シークレットの削除の取り消し

以前に削除したバージョンのキー値シークレットを復元します。

vault kv undelete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/SECRET_NAME

カスタム・グループ内のキー値シークレットの以前に削除されたバージョンを復元します。

vault kv undelete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

前提条件

シークレットを復元するには、マネージャー・サービス・ロールが必要です。

コマンド・オプション

-バージョン
削除するバージョン。
-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

キー値シークレットの指定されたバージョンの削除を取り消します。

vault kv undelete -versions=2 ibmcloud/kv/my-test-kv-secret

キー値シークレットの指定されたバージョンの削除を取り消します。

vault kv undelete -versions=2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

出力

kvシークレットの指定されたバージョンの削除の取り消しのコマンドは、以下の出力を返します。

Success! Data written to: ibmcloud/kv/undelete/my-test-kv-secret

シークレットのバージョンの破棄

指定されたバージョンのキー値シークレットを完全に破棄します。 代わりにシークレットのバージョンをソフト削除するには、指定したバージョンの削除コマンドを使用します。

vault kv destroy [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/SECRET_NAME

カスタム・グループ内のキー値シークレットの指定されたバージョンを破棄します。

vault kv destroy [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

前提条件

シークレットを削除するには、マネージャー・サービス・ロールが必要です。

コマンド・オプション

-バージョン
破棄しようとしているバージョン。
-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

永続的に指定されたバージョンのキー値シークレットを削除します。

vault kv destroy -versions=2 ibmcloud/kv/my-test-kv-secret

カスタム・グループ内のキー値シークレットの永続的に指定されたバージョンを削除します。

vault kv destroy -versions=2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

出力

kvシークレットのバージョンを破棄するコマンドは、以下の出力を返します。

Success! Data written to: ibmcloud/kv/undelete/my-test-kv-secret

メタデータ・キー値シークレットの作成または更新

キー値シークレットのメタデータを作成または更新します。

vault kv metadata put [-format=FORMAT] [METADATA_KEY_VALUE_PAIRS] ibmcloud/kv/SECRET_NAME

カスタム・グループ内のキー値シークレットのメタデータを作成または更新します。

vault kv metadata put [-format=FORMAT] [METADATA_KEY_VALUE_PAIRS] ibmcloud/kv/GROUP_ID/SECRET_NAME

前提条件

キーと値のシークレットを作成するには、ライターサービス役割が必要です。

コマンド・オプション

-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

キー値シークレットのペイロードを作成または更新します。

vault kv metadata put -custom-metadata=key1=value1 -custom-metadata=key2=value2 ibmcloud/kv/mysecret

カスタム・グループ内のキー値シークレットのペイロードを作成または更新します。

vault kv metadata put -custom-metadata=key1=value1 -custom-metadata=key2=value2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/mysecret

出力

kvシークレットの新規バージョンを作成するコマンドは、以下の出力を返します。

Key              Value
---              -----
created_time     2022-03-08T18:32:43.610242127Z
deletion_time    n/a
destroyed        false
version          2

キー値シークレットのメタデータの読み取り

キー値シークレットのメタデータを取得します。

vault kv metadata get ibmcloud/kv/SECRET_NAME

カスタム・グループ内のキー値シークレットのメタデータを取得します。

vault kv metadata get ibmcloud/kv/GROUP_ID/SECRET_NAME

前提条件

キー値シークレットのメタデータを読み取るには、リーダーまたはライターのサービス役割が必要です。

コマンド・オプション

-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

キー値シークレットのメタデータを読み取ります。

vault kv metadata get ibmcloud/kv/my-test-kv-secret

カスタム・グループ内のキー値シークレットのメタデータを読み取ります。

vault kv metadata get ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

出力

kvシークレットのメタデータを読み取るコマンドは、以下の出力を返します。

========== Metadata ==========
Key                     Value
---                     -----
cas_required            false
created_time            2022-03-04T17:08:34.406336489Z
current_version         3
custom_metadata         map[key1:value1 key2:value2]
delete_version_after    0s
max_versions            10
oldest_version          0
updated_time            2022-03-08T20:06:39.585190049Z

====== Version 1 ======
Key              Value
---              -----
created_time     2022-03-04T17:08:34.406336489Z
deletion_time    n/a
destroyed        true

====== Version 2 ======
Key              Value
---              -----
created_time     2022-03-08T18:32:43.610242127Z
deletion_time    2022-03-08T20:05:08.850704454Z
destroyed        false

====== Version 3 ======
Key              Value
---              -----
created_time     2022-03-08T20:06:39.585190049Z
deletion_time    n/a
destroyed        false

キー値シークレットのメタデータとすべてのバージョンの削除

指定されたキー値シークレットのメタデータとすべてのバージョン・データを完全に削除します。 このコマンドを使用すると、すべてのバージョン履歴が削除されます。

vault kv metadata delete ibmcloud/kv/SECRET_NAME
vault kv metadata delete ibmcloud/kv/GROUP_ID/SECRET_NAME

前提条件

キー値シークレットのメタデータを削除するには、マネージャー・サービス・ロールが必要です。

コマンド・オプション

-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

キー値シークレットのデータとメタデータを永続的に削除します。

vault kv metadata delete ibmcloud/kv/my-test-kv-secret

カスタム・シークレット・グループ内のキー値シークレットのデータとメタデータを永続的に削除します。

vault kv metadata delete ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

出力

kvシークレットのメタデータを削除するコマンドは、以下の出力を返します。

Success! Data deleted (if it existed) at: ibmcloud/kv/metadata/my-test-kv-secret

キー値シークレットのキー名の一覧表示

キー値シークレットのキー名のリストを取得します。 キー名には機密情報をエンコードしないでください。 このコマンドを使用してキーの値にアクセスすることはできません。

vault kv list ibmcloud/kv

カスタム・シークレット・グループに保管されているキー値シークレットのキー名をリストします。

vault kv list ibmcloud/kv/GROUP_ID

前提条件

キー値シークレットのキー名を読み取るには、リーダーまたはライターのサービス役割が必要です。

コマンド・オプション

-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

defaultシークレット・グループに保管されているキー値シークレットのキー名をリストします。

vault kv list ibmcloud/kv

カスタム・シークレット・グループに保管されているキー値シークレットのキー名をリストします。

vault kv list ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8

出力

kvシークレットのキー名をリストするコマンドは、以下の出力を返します。

Keys
----
my-updated-kv-secret

鍵値シークレットにパッチを適用します

キー値シークレットのバージョンにパッチを適用します。

vault kv patch [-format=FORMAT] ibmcloud/kv/SECRET_NAME [KEY_VALUE_PAIRS]

カスタム・グループ内にキー値シークレットのバージョンを作成します。

vault kv patch [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME [KEY_VALUE_PAIRS]

前提条件

キーと値のシークレットを作成するには、ライターサービス役割が必要です。

コマンド・オプション

-format
指定したフォーマットで出力を表示します。 有効なフォーマットは、tablejson、および yaml です。 デフォルトはtableです。 VAULT_FORMAT 環境変数を使用して出力フォーマットを設定することもできます。

キー値シークレットのペイロードを作成または更新します。

vault kv patch ibmcloud/kv/example-kv-secret key1=value1 key2=value2

カスタム・グループ内のキー値シークレットのペイロードを作成または更新します。

vault kv patch ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/example-kv-secret key1=value1 key2=value2

出力

kvシークレットの新規バージョンを作成するコマンドは、以下の出力を返します。

Key              Value
---              -----
created_time     2022-03-08T18:32:43.610242127Z
deletion_time    n/a
destroyed        false
version          2