シークレット・タスク

IBM Cloud® Secrets Manager はシークレット・タスクを使用して、非同期シークレット・タイプのライフサイクルをトリガーし、管理する。 非同期の秘密タイプは、初期状態( pre-activation )で作成され、新しい実行タスクが自動的に作成され、秘密の資格情報の外部作成を追跡する。 外部プロセスが完了すると、シークレットタスクを新しい認証情報で更新し、 Secrets Manager このシークレットステートを更新し、 active。 秘密のタスクをリストアップし、その詳細を取得し、削除することができます。

Custom credentials secret タイプは、 IBM Cloud® Code Engine ジョブとして実装されたクレデンシャル・プロバイダの非同期実行をトリガーするために、secret タスクを使用する。 各タスクは、タスクIDがジョブ実行名として設定されたジョブ実行にマッピングされる。

タスクにはさまざまなステータスタイプ、関連する値の記録がある。

利用可能なタスクステータス
「タブ」ボタンを使用して、テーブルのコンテキストを変更します。 この表には、行および列のヘッダーがあります。 行のヘッダーには、プラットフォーム・ロール名と列のヘッダーによって、各ロールで使用可能な特定の情報が示されます。
ステータス 説明
queued タスクは作成され、処理開始のキューで待機している。 キューに入れられたタスクは、削除することでキャンセルすることができる。
processing タスクは実行中である。 カスタム資格情報シークレットタイプの場合、 Code Engine ジョブの実行が開始され、タスクはジョブのリターンまたはタイムアウトの経過を待っている。 処理中のタスクは、削除することで取り消すことができる。
credentials_created 作成タスクは正常に完了しました。 カスタム認証情報のシークレットタイプの場合、 Code Engine ジョブの成功を Secrets Manager に報告する。 このステータスのタスクは、それ以降の更新を受け付けない。
credentials_deleted 削除タスクは正常に完了しました。 カスタム認証情報の秘密の場合は、 Code Engine ジョブを入力する。 このステータスのタスクは、それ以降の更新を受け付けない。
failed タスクのタイムアウトが経過したか、資格情報プロバイダがエラーでタスクを更新した。 カスタム認証情報シークレットタイプの場合、 Code Engine ジョブはエラーで Secrets Manager に戻りました。 このステータスのタスクは、それ以降の更新を受け付けない。
使用可能なタスク・タイプ
「タブ」ボタンを使用して、テーブルのコンテキストを変更します。 この表には、行および列のヘッダーがあります。 行のヘッダーには、プラットフォーム・ロール名と列のヘッダーによって、各ロールで使用可能な特定の情報が示されます。
ステータス 説明
create_credentials このタイプはクレデンシャルを作成するタスクを表します。 シークレット作成やローテーションがトリガーとなることもある。
delete_credentials このタイプは、以前に作成されたクレデンシャルを削除するタスクを表します。 シークレットの削除、特定のバージョンの期限切れや削除、あるいはローテーションがトリガーとなる。
利用可能なタスクレコードの値
「タブ」ボタンを使用して、テーブルのコンテキストを変更します。 この表には、行および列のヘッダーがあります。 行のヘッダーには、プラットフォーム・ロール名と列のヘッダーによって、各ロールで使用可能な特定の情報が示されます。
ステータス 説明
secret_creation このタスクが発生したのは、秘密が作られたからだ。
manual_secret_rotation このタスクは、手動ローテーションのために引き起こされた。
automatic_secret_rotation このタスクは、自動(周期的)ローテーションのために発動された。
secret_version_expiration このタスクは、シークレットバージョンの有効期限が切れたために発生した。
secret_version_data_deletion このタスクはシークレットを削除したために発生した。

UIからシークレットタスクを操作する

カスタムクレデンシャルシークレットに関連するタスクを見るには、 アクションドロップダウン内のタスクメニューにアクセスします。 ここでは、クレデンシャルに関連付けられたアクションの記録を見ることができます。 例えば、いつクレデンシャルが作成または削除されたか、あるいはタイムアウトがタスクに関連付けられ たかどうかなどである。

  1. シークレット表で、**「アクション」**メニュー「アクション」アイコンをクリックして、シークレットのオプションのリストを開きます。
  2. 秘密のタスクを表示するには、「 タスク 」をクリックします。

秘密タスクを削除するには

  1. シークレット表で、**「アクション」**メニュー「アクション」アイコンをクリックして、シークレットのオプションのリストを開きます。
  2. タスクをクリックすると、すべてのタスクが表示されます。
  3. 削除するタスクのチェックボックスにチェックを入れ、 選択した削除をクリックする。

CLIからシークレットタスクを操作する

始める前に、 CLIのドキュメントに従って APIエンドポイントを設定してください。

Secrets Manager CLI プラグインを使用してカスタム資格情報シークレットに関連するタスクを見るには、次のコマンドを実行する。 ibmcloud secrets-manager secret-create コマンドを実行します:

ibmcloud secrets-manager secret-tasks --id SECRET_ID

特定のタスクの詳細を得るには、タスクIDを使う:

ibmcloud secrets-manager secret-task --secret-id SECRET-ID --id TASK_ID

タスクを削除するには

ibmcloud secrets-manager secret-task-delete --secret-id SECRET-ID --id TASK_ID

APIを使った秘密のタスク

Secrets Manager API を呼び出すことで、カスタム資格情報の秘密タスクをプログラムで見ることができます。 API を呼び出すときは、SECRET_ID 変数と IAM トークンを Secrets Manager インスタンス固有の値に置き換える:

curl -X POST
    -H "Authorization: Bearer {IAM_token}" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
  "https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/SECRET_ID/tasks"

特定のタスクの詳細を得るには、タスクIDを使う:

curl -X POST
    -H "Authorization: Bearer {IAM_token}" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
  "https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/SECRET_ID/tasks/TASK_ID"

タスクを削除するには

curl -X PUT
    -H "Authorization: Bearer {IAM_token}" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
  "https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/SECRET_ID/tasks/TASK_ID"