AO 通过 kubectl
命令执行密钥管理操作,以访问管理 API 服务器。
准备工作
在执行 KMS 操作之前,请配置 kubectl
命令以访问 Management API 服务器。为此,请使用 gdcloud 命令行界面 (CLI) 获取 kubeconfig 文件。
如需获得创建密钥所需的权限,请让您的组织 IAM 管理员为您授予项目的 KMS Creator (kms-creator
) 角色。如果您需要其他权限(例如删除密钥),请申请 KMS Admin (kms-admin
) 角色。
创建密钥
请完成以下步骤:
在项目命名空间中创建密钥。以下示例会创建
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:管理 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
。
删除密钥
请完成以下步骤:
删除项目命名空间中的键:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ delete KEY_PRIMITIVE KEY_NAME \ --namespace=PROJECT
执行以下变量替换操作:
- MANAGEMENT_API_SERVER:管理 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