Créer et supprimer des clés

L'AO effectue des opérations de gestion des clés à l'aide de la commande kubectl pour accéder au serveur de l'API Management.

Avant de commencer

Avant d'effectuer des opérations KMS, configurez la commande kubectl pour accéder au serveur de l'API Management. Pour ce faire, obtenez un fichier kubeconfig à l'aide de l'interface de ligne de commande (CLI) gdcloud.

Pour obtenir les autorisations nécessaires pour créer des clés, demandez à votre administrateur IAM de l'organisation de vous accorder le rôle Créateur KMS (kms-creator) dans votre projet. Si vous avez besoin de droits supplémentaires, comme celui de supprimer des clés, demandez le rôle Administrateur KMS (kms-admin).

Créer une clé

Procédez comme suit :

  1. Créez une clé dans l'espace de noms du projet. L'exemple suivant crée la clé 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
    

    Remplacez les variables suivantes :

    • MANAGEMENT_API_SERVER : fichier kubeconfig du serveur de l'API Management. Connectez-vous et générez le fichier kubeconfig si vous n'en avez pas.
    • KEY_NAME : nom de la clé que vous souhaitez créer, par exemple key-1.
    • PROJECT : nom du projet, par exemple kms-test1.
  2. Vérifiez la création de la clé :

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

    Si la clé est créée, la valeur True s'affiche dans la colonne READY.

Supprimer une clé

Procédez comme suit :

  1. Supprimez la clé dans l'espace de noms du projet :

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

    Remplacez les variables suivantes :

    • MANAGEMENT_API_SERVER : fichier kubeconfig du serveur de l'API Management. Connectez-vous et générez le fichier kubeconfig si vous n'en avez pas.
    • KEY_PRIMITIVE : clé à supprimer (par exemple, aeadkey pour la clé AEAD).
    • KEY_NAME : nom de la clé que vous souhaitez supprimer, par exemple key-1.
    • PROJECT : nom du projet, par exemple kms-test1.
  2. Vérifiez la suppression de la clé et assurez-vous qu'elle n'apparaît pas dans le résultat :

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