Creare ed eliminare chiavi

L'AO esegue operazioni di gestione delle chiavi tramite il comando kubectl per accedere al server API Management.

Prima di iniziare

Prima di eseguire le operazioni KMS, configura kubectl per accedere al server API Management e ottenere le autorizzazioni necessarie.

Configurare l'accesso al server dell'API Management

Configura kubectl per accedere al server dell'API Management:

  1. Se non l'hai ancora fatto, recupera un file kubeconfig per il server API Management utilizzando l'interfaccia a riga di comando (CLI) gcloud.
  2. Imposta la variabile di ambiente MANAGEMENT_API_SERVER:

    export MANAGEMENT_API_SERVER=PATH_TO_KUBECONFIG
    

    Sostituisci PATH_TO_KUBECONFIG con il percorso del file kubeconfig generato.

Autorizzazioni obbligatorie

Per ottenere le autorizzazioni necessarie, chiedi all'amministratore IAM dell'organizzazione di concederti i seguenti ruoli KMS nel tuo progetto:

  • Per creare ed elencare le chiavi, richiedi il ruolo di Creator KMS (kms-creator).
  • Per creare, elencare ed eliminare le chiavi, richiedi il ruolo Amministratore KMS (kms-admin).

Crea una chiave

Completa i seguenti passaggi:

  1. Crea una chiave nello spazio dei nomi del progetto. L'esempio seguente crea la chiave 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
    

    Sostituisci le seguenti variabili:

    • MANAGEMENT_API_SERVER: il file kubeconfig del server API Management. Accedi e genera il file kubeconfig se non ne hai uno.
    • KEY_NAME: un nome per la chiave che vuoi creare, ad esempio key-1.
    • PROJECT: il nome del progetto, ad esempio kms-test1.
  2. Verifica la creazione della chiave:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      get aeadkey KEY_NAME \
      --namespace=PROJECT -o yaml
    

    Se la creazione della chiave ha esito positivo, vedrai il valore True nella colonna READY.

Eliminare una chiave

Completa i seguenti passaggi:

  1. Elimina la chiave nello spazio dei nomi del progetto:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      delete KEY_PRIMITIVE KEY_NAME \
      --namespace=PROJECT
    

    Sostituisci le seguenti variabili:

    • MANAGEMENT_API_SERVER: il file kubeconfig del server API Management. Accedi e genera il file kubeconfig se non ne hai uno.
    • KEY_PRIMITIVE: la chiave che vuoi eliminare, ad esempio aeadkey per la chiave AEAD.
    • KEY_NAME: il nome della chiave che vuoi eliminare, ad esempio key-1.
    • PROJECT: il nome del progetto, ad esempio kms-test1.
  2. Verifica l'eliminazione della chiave e assicurati di non visualizzarla nel risultato:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      get KEY_PRIMITIVE  KEY_NAME \
      --namespace=PROJECT