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