O AO realiza operações de gestão de chaves através do comando kubectl para aceder ao servidor da API Management.
Antes de começar
Antes de realizar operações do KMS, configure kubectl para aceder ao servidor da API Management e obter as autorizações necessárias.
Configure o acesso ao servidor da API Management
Configure o kubectl para aceder ao servidor da API Management:
- Se ainda não o fez, obtenha um ficheiro kubeconfig para o servidor da API Management através da interface de linhas de comando (CLI) gcloud.
Defina a variável de ambiente
MANAGEMENT_API_SERVER:export MANAGEMENT_API_SERVER=PATH_TO_KUBECONFIGSubstitua
PATH_TO_KUBECONFIGpelo caminho do ficheiro kubeconfig gerado.
Autorizações necessárias
Para receber as autorizações de que precisa, peça ao administrador de IAM da sua organização para lhe conceder as seguintes funções do KMS no seu projeto:
- Para criar e listar chaves, peça a função KMS Creator (
kms-creator). - Para criar, listar e eliminar chaves, peça a função de administrador do KMS (
kms-admin).
Crie uma chave
Conclua os seguintes passos:
Crie uma chave no espaço de nomes do projeto. O exemplo seguinte cria a chave
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 EOFSubstitua as seguintes variáveis:
- MANAGEMENT_API_SERVER: o ficheiro kubeconfig do servidor da API Management. Inicie sessão e gere o ficheiro kubeconfig se não tiver um.
- KEY_NAME: um nome para a chave que quer criar, por exemplo:
key-1. - PROJECT: o nome do projeto. Por exemplo:
kms-test1.
Valide a criação da chave:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get aeadkey KEY_NAME \ --namespace=PROJECT -o yamlSe a criação da chave for bem-sucedida, vê o valor
Truena colunaREADY.
Elimine uma chave
Conclua os seguintes passos:
Elimine a chave no espaço de nomes do projeto:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ delete KEY_PRIMITIVE KEY_NAME \ --namespace=PROJECTSubstitua as seguintes variáveis:
- MANAGEMENT_API_SERVER: o ficheiro kubeconfig do servidor da API Management. Inicie sessão e gere o ficheiro kubeconfig se não tiver um.
- KEY_PRIMITIVE: a chave que quer eliminar, por exemplo:
aeadkeypara a chaveAEAD. - KEY_NAME: o nome da chave que quer eliminar, por exemplo:
key-1. - PROJECT: o nome do projeto. Por exemplo:
kms-test1.
Valide a eliminação da chave e certifique-se de que não vê a chave no resultado:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get KEY_PRIMITIVE KEY_NAME \ --namespace=PROJECT