このトピックでは、Secret Manager でのアノテーションのサポートについて説明します。
概要
アノテーションを使用して、シークレットに関するカスタム メタデータを保存します。たとえば、マウント先のファイルパスを使用して、シークレットにアノテーションを付けることができます。アノテーションは、ワークロードによる管理や使用を支援するために使用することもできます。
アノテーションはラベルとは異なります。ラベルはリソースの並べ替え、フィルタリング、グループ化に使用されるのに対し、アノテーションは、シークレットで、識別できない任意のメタデータの保存に使用されます。ラベルにメタデータを指定するときは、文字と文字長の制限があります。アノテーション内のメタデータは、小規模 / 大規模、構造化 / 非構造化のいずれでもかまわず、ラベルで許可されていない文字を含められます。
必要なロール
シークレットにアノテーションを追加して更新するには、シークレット、プロジェクト、フォルダ、または組織に対する Secret Manager 管理者のロール(
roles/secretmanager.admin
)が必要です。アノテーションを表示するには、シークレット、プロジェクト、フォルダ、または組織に対する Secret Manager 閲覧者のロール(
roles/secretmanager.viewer
)が必要です。
シークレット バージョンには IAM ロールを付与できません。詳細については、IAM によるアクセス制御をご覧ください。
シークレットにアノテーションを追加する
アノテーションは、新しいシークレットの作成時または既存のシークレットの更新時に追加できます。アノテーションのメタデータは Key-Value ペアとして保存されます。
Console
-
Google Cloud コンソールの [Secret Manager] ページに移動します。
-
[シークレット マネージャー] ページで、[シークレットを作成] をクリックします。
-
[シークレットの作成] ページの [名前] に、シークレットの名前を入力します(例:
my-secret
)。 -
(省略可)最初のシークレットの作成時にシークレット バージョンも追加するには、[シークレットの値] フィールドにシークレットの値を入力します(例:
abcd1234
)。 -
[アノテーションを追加する] をクリックします。
-
キーと対応する値を入力します。
-
[リージョン] セクションは変更しません。
-
[シークレットを作成] ボタンをクリックします。
gcloud CLI
Secret Manager をコマンドラインで使用するには、まず gcloud CLI のバージョン 378.0.0 以降をインストールまたはアップグレードします。Compute Engine または Google Kubernetes Engine では、cloud-platform
スコープで認証する必要があります。
gcloud secrets create mysecret --set-annotations= mykey=myval,mykey2=myval2
既存のシークレットにアノテーションを追加するには、アノテーションを編集するで説明されている手順に従います。
アノテーション キーについて次の点に注意してください。
- キーはシークレットに対して一意である必要があります。同じシークレット内のキーを繰り返すことはできません。
- キーは 1~63 の文字長である必要があります
- キーの UTF-8 エンコードは最大 128 バイトにする必要があります。
- キーの先頭と末尾には英数字を使用する必要があります。
- キーには、英数字の間に、ダッシュ、アンダースコア、ドットを使用できます。
- アノテーションのキーと値の合計サイズは 16 KiB 未満である必要があります。
アノテーションを表示する
シークレットに適用されたアノテーションは、[シークレットの詳細] ページの [概要] タブに表示されます。
Console
-
Google Cloud コンソールの [Secret Manager] ページに移動します。
-
[Secret Manager] ページで、シークレットの名前をクリックします。
-
[シークレットの詳細] ページが開きます。[概要] タブを選択します。ここでシークレットに添付されたアノテーションを確認できます。左側の列にキーが表示され、右側の列に値が表示されます。
gcloud CLI
Secret Manager をコマンドラインで使用するには、まず gcloud CLI のバージョン 378.0.0 以降をインストールまたはアップグレードします。Compute Engine または Google Kubernetes Engine では、cloud-platform
スコープで認証する必要があります。
gcloud secrets describe mysecret
アノテーションを編集
アノテーションは [シークレットを編集する] ページで更新できます。
Console
-
Google Cloud コンソールの [Secret Manager] ページに移動します。
-
[Secret Manager] ページで、シークレットの名前をクリックします。
-
[シークレットの詳細] ページが開きます。[シークレットを編集する] をクリックし、アノテーションまで下にスクロールします。
-
既存のアノテーションの値を変更したり、アノテーションを削除したり、新しいアノテーションを追加したりできます。
-
[シークレットを更新する] をクリックして、変更を保存します。
gcloud CLI
Secret Manager をコマンドラインで使用するには、まず gcloud CLI のバージョン 378.0.0 以降をインストールまたはアップグレードします。Compute Engine または Google Kubernetes Engine では、cloud-platform
スコープで認証する必要があります。
gcloud secrets update mysecret --update-annotations=mykey3=myval3
gcloud secrets update mysecret --remove-annotations=mykey3=myval3
gcloud secrets update mysecret --clear-annotations
次のステップ
- シークレットへのアクセスを管理する方法を学ぶ。
- シークレットのローテーション スケジュールを設定する方法を学ぶ。
- シークレットの通知を設定する方法を学ぶ。