Cette page explique comment effectuer la rotation automatique ou manuelle d'une clé. Pour en savoir plus sur la rotation des clés en général, consultez la page Rotation des clés.
Rôles requis
Pour obtenir les autorisations nécessaires pour alterner des clés, demandez à votre administrateur de vous accorder le les rôles IAM suivants sur votre clé:
-
Administrateur Cloud KMS (
roles/cloudkms.admin
) -
Re-chiffrer les données :
Chiffreur/Déchiffreur de CryptoKeys Cloud KMS (
roles/cloudkms.cryptoKeyEncrypterDecrypter
)
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour faire pivoter les clés. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour faire pivoter des clés :
-
Modifier la version de la clé primaire :
cloudkms.cryptoKeys.update
-
Modifier ou désactiver la rotation automatique:
cloudkms.cryptoKeys.update
-
Créer une version de clé :
cloudkms.cryptoKeyVersions.create
-
Désactivez les anciennes versions de clé :
cloudkms.cryptoKeyVersions.update
-
Rechiffrez des données:
-
cloudkms.cryptoKeyVersions.useToDecrypt
-
cloudkms.cryptoKeyVersions.useToEncrypt
-
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Un utilisateur disposant d'un rôle personnalisé contenant toutes ces autorisations peut la rotation des clés et le rechiffrement des données par elles-mêmes. Utilisateurs disposant du rôle d'administrateur Cloud KMS et le rôle Chiffreur/Déchiffreur de CryptoKeys Cloud KMS peuvent fonctionner ensemble pour alterner des clés et rechiffrer des données. Suivez le principe du moindre privilège lorsque vous attribuez des rôles. Pour en savoir plus, consultez la section Autorisations et rôles.
Lors de la rotation d'une clé, les données chiffrées avec les versions de clé précédentes ne sont pas automatiquement rechiffrées. Pour en savoir plus, consultez la section Déchiffrer et rechiffrer. La rotation d'une clé n'entraîne ni la désactivation, ni la destruction automatique d'aucune version de clé existante. Détruire les versions de clé qui ne sont plus nécessaires permet de réduire les coûts.
Configurer la rotation automatique
Pour configurer la rotation automatique lors de la création d'une clé, procédez comme suit :
Console
Lorsque vous utilisez la console Google Cloud pour créer une clé, Cloud KMS définit la la période de rotation et la date de la prochaine rotation. Vous pouvez choisir d'utiliser les valeurs par défaut ou de spécifier des valeurs différentes.
Pour spécifier une période de rotation et une date de début différentes, lorsque vous créez des votre clé, mais avant de cliquer le bouton Create (Créer) :
Pour Période de rotation des clés, sélectionnez une option.
Pour À partir du, sélectionnez la date à laquelle vous souhaitez que la première rotation automatique ait lieu. Vous pouvez laisser la valeur par défaut pour Starting on (Date de début) afin de démarrer la première rotation automatique une période de rotation de clé à compter de la création de la clé.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par Installez la dernière version de Google Cloud CLI.
gcloud kms keys create KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --purpose "encryption" \ --rotation-period ROTATION_PERIOD \ --next-rotation-time NEXT_ROTATION_TIME
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés.ROTATION_PERIOD
: l'intervalle à alterner la clé (par exemple,30d
) pour alterner la clé tous les 30 jours. La période de rotation doit être d'au moins un jour et d'au plus 100 ans. Pour en savoir plus, consultez CryptoKey.rotationPeriod :NEXT_ROTATION_TIME
: le code temporel correspondant à la fin de la première la rotation (par exemple,2023-01-01T01:02:03
). Vous pouvez omettre--next-rotation-time
pour planifier la première rotation pendant une période de rotation à compter du moment où vous exécutez la commande. Pour en savoir plus, consultez la page concernantCryptoKey.nextRotationTime
Pour en savoir plus sur toutes les options et valeurs possibles, exécutez la commande avec l'option --help
.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C#, puis installez le SDK Cloud KMS pour C#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go, puis installez le SDK Cloud KMS pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Cloud KMS pour Java.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js, puis installez le SDK Cloud KMS pour Node.js.
PHP
Pour exécuter ce code, commencez par en apprendre plus sur l'utilisation de PHP sur Google Cloud, puis installez le SDK Cloud KMS pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python, puis installez le SDK Cloud KMS pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby, puis installez le SDK Cloud KMS pour Ruby.
API
Ces exemples utilisent curl comme client HTTP pour démontrer l'utilisation de l'API. Pour en savoir plus sur le contrôle des accès, consultez la page Accéder à l'API Cloud KMS.
Pour créer une clé, utilisez la méthode CryptoKey.create
:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys?crypto_key_id=KEY_NAME" \ --request "POST" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"purpose": "PURPOSE", "rotationPeriod": "ROTATION_PERIOD", "nextRotationTime": "NEXT_ROTATION_TIME"}'
Remplacez les éléments suivants :
PURPOSE
: le objectif de la clé.ROTATION_PERIOD
: intervalle de rotation de la clé (par exemple,30d
pour effectuer une rotation de la clé tous les 30 jours). La période de rotation doit être d'au moins un jour et d'au plus 100 ans. Pour en savoir plus, consultez CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: le code temporel correspondant à la fin de la première la rotation (par exemple,2023-01-01T01:02:03
). Pour en savoir plus, consultez la sectionCryptoKey.nextRotationTime
.
Pour configurer la rotation automatique sur une clé existante, procédez comme suit :
Console
Accédez à la page Gestion des clés dans la console Google Cloud.
Cliquez sur le nom du trousseau de clés contenant la clé pour laquelle vous souhaitez ajouter un calendrier de rotation.
Cliquez sur la clé à laquelle vous souhaitez ajouter un calendrier de rotation.
Dans l'en-tête, cliquez sur Modifier la période de rotation.
Dans l'invite, choisissez de nouvelles valeurs pour les champs Période de rotation et Rotation à partir du.
Dans l'invite, cliquez sur Enregistrer.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer ou mettre à jour la dernière version de Google Cloud CLI.
gcloud kms keys update KEY_NAME \ --location LOCATION \ --keyring KEY_RING \ --rotation-period ROTATION_PERIOD \ --next-rotation-time NEXT_ROTATION_TIME
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés.ROTATION_PERIOD
: l'intervalle à alterner la clé (par exemple,30d
) pour alterner la clé tous les 30 jours. La période de rotation doit être d'au moins un jour et d'au plus 100 ans. Pour en savoir plus, consultez CryptoKey.rotationPeriod :NEXT_ROTATION_TIME
: code temporel à utiliser pour effectuer la prochaine rotation (par exemple,2023-01-01T01:02:03
). Vous pouvez omettre--next-rotation-time
pour planifier la prochaine rotation d'une rotation période à partir du moment où vous exécutez la commande. Pour en savoir plus, consultez la page concernantCryptoKey.nextRotationTime
Pour en savoir plus sur toutes les options et valeurs possibles, exécutez la commande avec l'option --help
.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C#, puis installez le SDK Cloud KMS pour C#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go, puis installez le SDK Cloud KMS pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Cloud KMS pour Java.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js, puis installez le SDK Cloud KMS pour Node.js.
PHP
Pour exécuter ce code, commencez par en apprendre plus sur l'utilisation de PHP sur Google Cloud, puis installez le SDK Cloud KMS pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python, puis installez le SDK Cloud KMS pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby, puis installez le SDK Cloud KMS pour Ruby.
API
Ces exemples utilisent curl comme client HTTP pour démontrer l'utilisation de l'API. Pour en savoir plus sur le contrôle des accès, consultez la page Accéder à l'API Cloud KMS.
Pour mettre à jour une clé, utilisez la méthode
CryptoKey.patch
méthode:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?updateMask=rotationPeriod,nextRotationTime" \ --request "PATCH" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"rotationPeriod": "ROTATION_PERIOD", "nextRotationTime": "NEXT_ROTATION_TIME"}'
Remplacez les éléments suivants :
ROTATION_PERIOD
: intervalle de rotation de la clé (par exemple,30d
pour effectuer une rotation de la clé tous les 30 jours). La période de rotation doit être d'au moins un jour et d'au plus 100 ans. Pour en savoir plus, consultez CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: le code temporel correspondant à la fin du prochain événement la rotation (par exemple,2023-01-01T01:02:03
). Pour en savoir plus, consultez la sectionCryptoKey.nextRotationTime
.
Rotation manuelle d'une clé
Commencez par créer une nouvelle version de clé :
Console
Accédez à la page Gestion des clés dans la console Google Cloud.
Cliquez sur le nom du trousseau de clés contenant la clé pour laquelle vous souhaitez créer une nouvelle version.
Cliquez sur la clé pour laquelle vous souhaitez créer une nouvelle version.
Dans l'en-tête, cliquez sur Effectuer une rotation.
Dans l'invite, cliquez sur Effectuer une rotation pour confirmer.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer ou mettre à jour la dernière version de Google Cloud CLI.
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés.
Les versions de clé sont numérotées dans l'ordre.
Pour en savoir plus sur toutes les options et valeurs possibles, exécutez la commande avec l'option --help
.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C#, puis installez le SDK Cloud KMS pour C#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go, puis installez le SDK Cloud KMS pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Cloud KMS pour Java.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js, puis installez le SDK Cloud KMS pour Node.js.
PHP
Pour exécuter ce code, commencez par en apprendre plus sur l'utilisation de PHP sur Google Cloud, puis installez le SDK Cloud KMS pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python, puis installez le SDK Cloud KMS pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby, puis installez le SDK Cloud KMS pour Ruby.
API
Ces exemples utilisent curl comme client HTTP pour démontrer l'utilisation de l'API. Pour en savoir plus sur le contrôle des accès, consultez la page Accéder à l'API Cloud KMS.
Pour alterner manuellement une clé, commencez par créer une version de clé en appelant la méthode CryptoKeyVersions.create .
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions" \ --request "POST" \ --header "authorization: Bearer TOKEN"
Cette commande crée une version de clé, mais ne la définit pas comme version principale.
Pour définir votre nouvelle version de clé comme version principale, consultez Définir une version de clé existante comme version de clé principale.
Si nécessaire, rechiffrez les données qui ont été chiffrées à l'aide de la version de clé précédente.
Définir une version existante comme version de clé primaire
Pour définir une version de clé différente comme version primaire pour une clé, mettez à jour la clé avec les informations de la nouvelle version primaire. Une version de clé doit être activée avant de pouvoir la configurer comme version primaire.
Console
Accédez à la page Gestion des clés dans la console Google Cloud.
Cliquez sur le nom du trousseau de clés contenant la clé dont vous souhaitez mettre à jour la version primaire.
Cliquez sur la clé dont vous souhaitez mettre à jour la version primaire.
Sur la ligne correspondant à la version de clé que vous souhaitez utiliser comme version primaire, cliquez sur Afficher plus
.Cliquez sur Définir comme version primaire dans le menu.
Dans l'invite de confirmation, cliquez sur Définir comme version primaire.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer ou mettre à jour la dernière version de Google Cloud CLI.
gcloud kms keys update KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --primary-version KEY_VERSION
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés.- KEY_VERSION: numéro de version de la nouvelle version de clé primaire.
Pour en savoir plus sur toutes les options et valeurs possibles, exécutez la commande avec l'option --help
.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C#, puis installez le SDK Cloud KMS pour C#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go, puis installez le SDK Cloud KMS pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Cloud KMS pour Java.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js, puis installez le SDK Cloud KMS pour Node.js.
PHP
Pour exécuter ce code, commencez par en apprendre plus sur l'utilisation de PHP sur Google Cloud, puis installez le SDK Cloud KMS pour PHP.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby, puis installez le SDK Cloud KMS pour Ruby.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python, puis installez le SDK Cloud KMS pour Python.
API
Ces exemples utilisent curl comme client HTTP pour démontrer l'utilisation de l'API. Pour en savoir plus sur le contrôle des accès, consultez la page Accéder à l'API Cloud KMS.
Modifiez la version de clé primaire en appelant la méthode CryptoKey.updatePrimaryVersion .
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME:updatePrimaryVersion" \ --request "POST" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"cryptoKeyVersionId": "KEY_VERSION"}'
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet contenant le trousseau de clés.LOCATION
: emplacement Cloud KMS du trousseau de clésKEY_RING
: nom du trousseau de clés contenant la clé.KEY_NAME
: nom de la clé.- KEY_VERSION: numéro de version de la nouvelle version de clé primaire.
Lorsque vous modifiez la version de clé primaire, le changement devient généralement cohérent dans la minute qui suit. Toutefois, dans des cas exceptionnels, la propagation de cette modification peut prendre jusqu'à trois heures. Pendant ce temps, la version principale précédente peut être utilisée pour chiffrer les données. Pour en savoir plus, consultez la page Cohérence des ressources Cloud KMS.
Désactiver la rotation automatique
Pour désactiver la rotation automatique sur une clé, effacez le calendrier de rotation de la clé :
Console
Accédez à la page Gestion des clés dans la console Google Cloud.
Cliquez sur le nom du trousseau de clés contenant la clé pour laquelle vous souhaitez supprimer le calendrier de rotation.
Cliquez sur la clé dont vous souhaitez supprimer le calendrier de rotation.
Dans l'en-tête, cliquez sur Modifier la période de rotation.
Dans l'invite, cliquez sur le champ Période de rotation, puis sélectionnez Jamais (rotation manuelle).
Dans l'invite, cliquez sur Enregistrer.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par Installez la dernière version de Google Cloud CLI.
gcloud kms keys update KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --remove-rotation-schedule
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés
Pour en savoir plus sur toutes les options et valeurs possibles, exécutez la commande avec l'option --help
.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C#, puis installez le SDK Cloud KMS pour C#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go, puis installez le SDK Cloud KMS pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Cloud KMS pour Java.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js, puis installez le SDK Cloud KMS pour Node.js.
PHP
Pour exécuter ce code, commencez par en apprendre plus sur l'utilisation de PHP sur Google Cloud, puis installez le SDK Cloud KMS pour PHP.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby, puis installez le SDK Cloud KMS pour Ruby.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python, puis installez le SDK Cloud KMS pour Python.
API
Ces exemples utilisent curl comme client HTTP pour démontrer l'utilisation de l'API. Pour en savoir plus sur le contrôle des accès, consultez la page Accéder à l'API Cloud KMS.
Pour mettre à jour une clé, utilisez la méthode CryptoKey.patch
:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?updateMask=rotationPeriod,nextRotationTime" \ --request "PATCH" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"rotationPeriod": null, "nextRotationTime": null}'
Pour en savoir plus sur rotationPeriod
et nextRotationTime
, consultez
keyRings.cryptoKeys
Effectuer une rotation de clé externe
Effectuer une rotation d'une clé externe coordonnée
Vous pouvez configurer la rotation automatique pour une stratégie coordonnée symétrique. clés externes. Vous pouvez également créer manuellement une version de clé pour des clés externes coordonnées symétriques ou asymétriques.
La rotation ou la création d'une version de clé protège toutes les nouvelles données avec cette clé d'être chiffré avec la nouvelle version de clé. Les données protégées par une version de clé précédente ne sont pas rechiffrées. Par conséquent, votre gestionnaire de clés externe doit continuer à mettre à disposition le matériel de clé de la version de clé précédente.
Pour créer une version de clé pour une clé externe coordonnée, procédez comme suit :
Console
Dans la console Google Cloud, accédez à la page Gestion des clés.
Sélectionnez le trousseau de clés, puis la clé.
Cliquez sur Créer une version. Un message indique que votre nouvelle version de clé sera générée à la fois dans Cloud KMS et dans votre EKM. Si un message Chemin d'accès de la clé ou URI de la clé, la clé sélectionnée n'est pas coordonnée clé externe.
Pour confirmer que vous souhaitez créer une version de clé, cliquez sur Créer une version.
La nouvelle version de clé apparaît avec l'état Génération en attente. Pour symétrique , les versions de clé créées manuellement ne sont pas automatiquement définies version de clé primaire. Vous pouvez définir la nouvelle version de clé principal.
CLI gcloud
Pour créer une nouvelle version de clé symétrique et la définir comme version de clé primaire,
Exécutez la commande kms keys versions create
avec l'option --primary
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --primary
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés
Pour créer une version de clé asymétrique ou une clé symétrique
qui n'est pas la version de clé primaire, exécutez la commande kms keys versions
create
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés.
Effectuer une rotation d'un Cloud EKM géré manuellement via une clé VPC
Commencez par effectuer une rotation du matériel de clé externe dans votre gestionnaire de clés externe. Si un nouveau chemin d'accès à la clé est généré, vous devez effectuer la rotation ou créer une nouvelle version de clé Cloud EKM avec le nouveau chemin d'accès à la clé. Pour les clés de chiffrement symétriques, effectuez une rotation Cloud EKM et spécifiez le nouveau chemin d'accès à partir de votre clé externe responsable. Pour les clés asymétriques, créez une version de clé et spécifiez le nouveau chemin de clé.
Si vous modifiez ou créez une version de clé, toutes les données nouvellement créées protégées par cette clé sont chiffrées avec la nouvelle version de clé. Données protégées avec une version de clé précédente n'est pas rechiffrée. Par conséquent, votre clé externe le gestionnaire doit continuer à créer le matériel de clé de la version de clé précédente disponibles.
Si le matériel de clé dans le système partenaire de gestion des clés externes ne change pas, mais que la clé de chemin d'accès, vous pouvez mettre à jour le fichier path sans effectuer de rotation de la clé.
Console
Dans la console Google Cloud, accédez à Gestion des clés.
Sélectionnez le trousseau de clés, puis la clé.
Cliquez sur Alterner la clé.
Dans le champ Chemin de la clé, saisissez le chemin d'accès de la clé pour la nouvelle version.
Cliquez sur Effectuer une rotation pour confirmer.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par Installez la dernière version de Google Cloud CLI.
Pour créer une version de clé symétrique et la définir comme version de clé principale, exécutez la commande kms keys versions create
avec l'option --primary
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --ekm-connection-key-path EXTERNAL_KEY_PATH \ --primary
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés.EXTERNAL_KEY_PATH
: chemin d'accès à la nouvelle version de la clé externe.
Pour créer une version de clé asymétrique ou une clé symétrique
qui n'est pas la version de clé primaire, exécutez la commande kms keys versions
create
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --ekm-connection-key-path EXTERNAL_KEY_PATH
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés.EXTERNAL_KEY_PATH
: chemin d'accès à la nouvelle version de la clé externe.
Pour en savoir plus sur toutes les options et valeurs possibles, exécutez la commande avec l'option --help
.
Une fois la version de clé créée, vous pouvez l'utiliser comme vous le feriez utiliser toute autre version de clé Cloud KMS.
Faire pivoter un Cloud EKM géré manuellement via une clé Internet
Commencez par effectuer une rotation du matériel de clé externe dans votre gestionnaire de clés externe. Si un nouvel URI est généré, vous devez effectuer une rotation ou créer une nouvelle version de clé Cloud EKM avec le nouvel URI. Pour les clés de chiffrement symétriques, effectuez une rotation de la Cloud EKM et spécifiez le nouvel URI de la clé à partir de votre clé externe responsable. Pour les clés asymétriques, créez une version de clé et spécifiez le nouvel URI de clé.
La rotation ou la création d'une version de clé protège toutes les nouvelles données avec cette clé d'être chiffré avec la nouvelle version de clé. Les données protégées par une version de clé précédente ne sont pas rechiffrées. Par conséquent, votre gestionnaire de clés externe doit continuer à mettre à disposition le matériel de clé de la version de clé précédente.
Si le matériel de la clé dans le système partenaire de gestion des clés externes ne change pas, mais que l'URI change, vous pouvez mettre à jour l'URI externe de la clé sans effectuer la rotation de la clé.
Console
Dans la console Google Cloud, accédez à Gestion des clés.
Sélectionnez le trousseau de clés, puis la clé.
Sélectionnez Alterner la clé pour les clés symétriques ou Créer une version pour des clés asymétriques.
Saisissez le nouvel URI de clé, puis sélectionnez Alterner la clé pour les clés symétriques. Créez une version pour les clés asymétriques.
La nouvelle version de clé devient la version primaire.
CLI gcloud
Pour créer une nouvelle version de clé symétrique et la définir comme version de clé primaire,
Exécutez la commande kms keys versions create
avec l'option --primary
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --external-key-uri EXTERNAL_KEY_URI \ --primary
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clésEXTERNAL_KEY_URI
: URI de clé de la nouvelle instance version de clé.
Pour créer une version de clé asymétrique ou une version de clé symétrique qui n'est pas la version de clé principale, utilisez la commande kms keys versions
create
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --external-key-uri EXTERNAL_KEY_URI
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clésEXTERNAL_KEY_URI
: URI de clé de la nouvelle instance version de clé.
Étape suivante
- Après la rotation d'une clé, vous pouvez rechiffrer données qui ont été chiffrées avec cette clé.
- Une fois que vous avez rechiffré vos données, vous pouvez vérifier si la version de clé est utilisée.
- Une fois que vous avez vérifié qu'une version de clé n'est plus utilisée, vous pouvez la détruire.