Gérer les ressources de chiffrement

Cette page vous explique comment gérer les buckets de stockage chiffrés Google Distributed Cloud (GDC) avec isolation physique.

Avant de commencer

Les buckets de stockage sont des ressources limitées à un projet spécifique. Le projet agit comme un conteneur, regroupant vos buckets et permettant leur gestion via le serveur d'API Management. Avant de pouvoir effectuer les opérations décrites sur cette page, vous devez créer un projet ou en sélectionner un existant pour lequel vous disposez des autorisations suffisantes.

Rôles IAM requis

Contactez l'administrateur de projet IAM pour demander les rôles suivants dans l'espace de noms de votre projet :

  • Administrateur de projet de bucket (project-bucket-admin) : créer, mettre à jour et supprimer des buckets de stockage.
  • Lecteur de projet d'objets de bucket (project-bucket-object-viewer) : permet d'afficher et de vérifier les détails des buckets et des objets de stockage.

Pour en savoir plus, consultez Accorder l'accès à un bucket.

Préparer votre environnement

Pour exécuter des commandes sur le serveur de l'API de gestion ou le serveur de l'API globale, procédez comme suit :

  1. Connectez-vous et générez le fichier kubeconfig pour le serveur d'API de gestion zonale si vous n'en avez pas.
  2. Pour les buckets birégionaux, procédez comme suit :
    • Vérifiez auprès de votre opérateur d'infrastructure (IO) que la ressource personnalisée BucketLocationConfig a été créée pour vos zones associées.
    • Générez le fichier kubeconfig pour le serveur d'API global.

Gérer les ressources de chiffrement

Les buckets avec chiffrement v2 disposent d'un secret kekRef et de plusieurs AEADKeys créées, où kekRef est utilisé pour référencer les AEADKeys par défaut actives utilisées, et les AEADKeys incluent les clés actives et d'archive appartenant au bucket.

Actualiser les clés AEAD par défaut actives d'un bucket

Nous vous recommandons d'actualiser les clés AEAD par défaut de votre bucket après environ 42 milliards d'écritures d'objets. Cette étape proactive renforce la sécurité et évite l'épuisement des clés. Le processus d'actualisation crée une nouvelle kekRef et désactive les clés AEADKeys précédentes. Pour lancer le processus d'actualisation, supprimez le secret kekRef associé au bucket.

Vous pouvez récupérer le kekRef précédent en exécutant la commande suivante :

kubectl get secrets -n NAMESPACE_NAME -l  object.gdc.goog/bucket-name=BUCKET_NAME

Vous pouvez ensuite exécuter la commande suivante pour supprimer la kekRef existante :

kubectl delete secrets OLD_KEKREF_NAME -n  NAMESPACE_NAME

Une fois la suppression effectuée, vous pouvez exécuter la commande suivante pour confirmer qu'une nouvelle kekRef a été créée sur la base de AGE :

kubectl get secrets -n NAMESPACE_NAME -l  object.gdc.goog/bucket-name=BUCKET_NAME

Vérifiez que de nouvelles clés AEADKeys par défaut ont été créées en fonction de AGE :

kubectl get aeadkeys -n NAMESPACE_NAME -l  cmek.security.gdc.goog/resource-name=BUCKET_NAME

Effectuer une rotation des clés AEAD par défaut d'un bucket

Si une clé AEADKey de votre bucket est compromise, vous devez effectuer une rotation manuelle des clés de chiffrement de clé associées au bucket.

Pour lancer le processus, vous devez d'abord actualiser les clés par défaut actives. Cette opération crée des clés AEADKeys actives par défaut et marque les anciennes clés de chiffrement de clé comme désactivées. Après l'actualisation des clés par défaut, les importations d'objets suivantes utilisent les nouvelles clés AEADKeys comme clés de chiffrement de clé. Les clés AEADKeys précédentes ne sont pas détruites. Vous pouvez donc toujours déchiffrer les objets existants qui ont été chiffrés à l'aide de ces clés.

Ensuite, suivez la procédure pour télécharger et réimporter les objets dans votre bucket, puis supprimez les anciens objets.

Une fois que vous avez réimporté tous les objets de votre bucket, vous pouvez nettoyer les clés AEAD inactives et les anciens objets. Identifiez les clés AEAD désactivées en fonction de AGE :

kubectl get aeadkeys -n NAMESPACE_NAME -l  cmek.security.gdc.goog/resource-name=BUCKET_NAME

Enfin, suivez la procédure pour supprimer les clés AEAD.