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 kubectl pour accéder au serveur de l'API Management et obtenir les autorisations nécessaires.
Configurer l'accès au serveur de l'API Management
Configurez kubectl pour accéder au serveur de l'API Management :
- Si vous ne l'avez pas déjà fait, obtenez un fichier kubeconfig pour le serveur d'API Management à l'aide de l'interface de ligne de commande (CLI) gdcloud.
Définissez la variable d'environnement
MANAGEMENT_API_SERVER:export MANAGEMENT_API_SERVER=PATH_TO_KUBECONFIGRemplacez
PATH_TO_KUBECONFIGpar le chemin d'accès au fichier kubeconfig généré.
Autorisations requises
Pour obtenir les autorisations nécessaires, demandez à votre administrateur IAM de l'organisation de vous accorder les rôles KMS suivants dans votre projet :
- Pour créer et lister des clés, demandez le rôle Créateur KMS (
kms-creator). - Pour créer, lister et supprimer des clés, demandez le rôle Administrateur KMS (
kms-admin).
Créer une clé
Procédez comme suit :
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 EOFRemplacez 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.
Vérifiez que la clé a été créée :
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get aeadkey KEY_NAME \ --namespace=PROJECT -o yamlSi la clé est créée, la valeur
Trues'affiche dans la colonneREADY.
Supprimer une clé
Procédez comme suit :
Supprimez la clé dans l'espace de noms du projet :
kubectl --kubeconfig MANAGEMENT_API_SERVER \ delete KEY_PRIMITIVE KEY_NAME \ --namespace=PROJECTRemplacez 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,
aeadkeypour 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.
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