AO は、kubectl
コマンドを使用してキー管理オペレーションを実行し、Management API サーバーにアクセスします。
始める前に
KMS オペレーションを実行する前に、Management API サーバーにアクセスするように kubectl
コマンドを構成します。これを行うには、gdcloud コマンドライン インターフェース(CLI)を使用して、kubeconfig ファイルを取得します。
鍵の作成に必要な権限を取得するには、プロジェクトの KMS 作成者(kms-creator
)ロールを付与するよう組織の IAM 管理者に依頼してください。鍵の削除などの追加の権限が必要な場合は、KMS 管理者(kms-admin
)ロールをリクエストします。
キーを作成
次の手順を行います。
プロジェクト Namespace にキーを作成します。次の例では、
AEAD
鍵を作成します。kubectl --kubeconfig MANAGEMENT_API_SERVER \ apply -f - << EOF apiVersion: "kms.gdc.goog/v1" kind: AEADKey metadata: name: KEY_NAME namespace: PROJECT spec: algorithm: AES_256_GCM EOF
次の変数を置き換えます。
- MANAGEMENT_API_SERVER: Management API サーバーの kubeconfig ファイル。kubeconfig ファイルがない場合は、ログインして生成します。
- KEY_NAME: 作成する鍵の名前(例:
key-1
)。 - PROJECT: プロジェクトの名前(例:
kms-test1
)。
鍵の作成を確認します。
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get aeadkey KEY_NAME \ --namespace=PROJECT -o yaml
キーの作成が成功すると、
READY
列に値True
が表示されます。
キーを削除する
次の手順を行います。
プロジェクトの Namespace でキーを削除します。
kubectl --kubeconfig MANAGEMENT_API_SERVER \ delete KEY_PRIMITIVE KEY_NAME \ --namespace=PROJECT
次の変数を置き換えます。
- MANAGEMENT_API_SERVER: Management API サーバーの kubeconfig ファイル。kubeconfig ファイルがない場合は、ログインして生成します。
- KEY_PRIMITIVE: 削除するキー(例:
AEAD
キーのaeadkey
)。 - KEY_NAME: 削除する鍵の名前(例:
key-1
)。 - PROJECT: プロジェクトの名前(例:
kms-test1
)。
鍵の削除を確認し、戻り値に鍵が表示されないことを確認します。
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get KEY_PRIMITIVE KEY_NAME \ --namespace=PROJECT