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 dont vous avez besoin pour alterner les clés, demandez à votre administrateur de vous attribuer les rôles IAM suivants sur votre clé:
-
Administrateur Cloud KMS (
roles/cloudkms.admin
) -
Rechiffrer 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 section Gérer les accès.
Ces rôles prédéfinis contiennent les autorisations requises pour alterner des clés. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour alterner des clés:
-
Modifier la version de la clé primaire :
cloudkms.cryptoKeys.update
-
Modifiez ou désactivez la rotation automatique :
cloudkms.cryptoKeys.update
-
Créer une version de clé :
cloudkms.cryptoKeyVersions.create
-
Désactiver les anciennes versions de la clé :
cloudkms.cryptoKeyVersions.update
-
Rechiffrer les 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 unique doté d'un rôle personnalisé et contenant toutes ces autorisations peut lui-même effectuer une rotation des clés et rechiffrer les données. Les utilisateurs dotés des rôles Administrateur Cloud KMS et Chiffreur/Déchiffreur de CryptoKeys Cloud KMS peuvent travailler ensemble pour alterner des clés et rechiffrer les données. Suivez le principe du moindre privilège lorsque vous attribuez des rôles. Pour en savoir plus, consultez Autorisations et rôles.
Lorsque vous effectuez la rotation d'une clé, les données chiffrées avec des 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 destroy automatique d'aucune version de clé existante.
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 automatiquement la période de rotation et la date de la prochaine rotation. Vous pouvez choisir d'utiliser les valeurs par défaut ou d'en spécifier différentes.
Pour spécifier une période de rotation et une date de début différentes, procédez comme suit lorsque vous créez votre clé, mais avant de cliquer sur le bouton Créer:
Sélectionnez une option pour Période de rotation des clés.
Pour À partir du, sélectionnez la date à laquelle vous souhaitez que la première rotation automatique ait lieu. Vous pouvez conserver la valeur par défaut du champ À partir du pour lancer la première rotation automatique d'une période de rotation des clés à partir du moment où vous créez la clé.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer la Google Cloud CLI ou passer à la dernière version en date.
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ésROTATION_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 de 100 ans au maximum. Pour en savoir plus, consultez la section CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: code temporel correspondant à la fin de la première rotation (par exemple,"2023-01-01T01:02:03"
). Vous pouvez omettre--next-rotation-time
pour programmer la première rotation pendant sept jours à compter de l'exécution de la commande. Pour en savoir plus, consultez la section CryptoKey.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
: 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 de 100 ans au maximum. Pour en savoir plus, consultez la section CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: code temporel correspondant à la fin de la première rotation (par exemple,"2023-01-01T01:02:03"
). Vous pouvez omettre--next-rotation-time
pour programmer la première rotation pendant sept jours à compter de l'exécution de la commande. Pour en savoir plus, consultez la section CryptoKey.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é à 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 la Google Cloud CLI ou passer à la dernière version en date.
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ésROTATION_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 de 100 ans au maximum. Pour en savoir plus, consultez la section CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: code temporel correspondant à la fin de la première rotation (par exemple,"2023-01-01T01:02:03"
). Vous pouvez omettre--next-rotation-time
pour programmer la première rotation pendant sept jours à compter de l'exécution de la commande. Pour en savoir plus, consultez la section CryptoKey.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
:
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 de 100 ans au maximum. Pour en savoir plus, consultez la section CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: code temporel correspondant à la fin de la première rotation (par exemple,"2023-01-01T01:02:03"
). Vous pouvez omettre--next-rotation-time
pour programmer la première rotation pendant sept jours à compter de l'exécution de la commande. Pour en savoir plus, consultez la section CryptoKey.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 la Google Cloud CLI ou passer à la dernière version en date.
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 effectuer une rotation manuelle d'une clé, commencez par créer une nouvelle 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 la section Définir une version 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 la Google Cloud CLI ou passer à la dernière version en date.
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 la 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, la modification devient généralement cohérente en une minute. Toutefois, dans certains 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 des 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é pour laquelle 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 installer la Google Cloud CLI ou passer à la dernière version en date.
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 la rotation d'une clé externe coordonnée
Vous pouvez configurer la rotation automatique pour les clés externes coordonnées symétriques. Vous pouvez également créer manuellement une version de clé pour les clés externes coordonnées symétriques ou asymétriques.
La rotation ou la création d'une version de clé entraîne le chiffrement de toutes les données nouvellement créées protégées par cette clé à l'aide de cette nouvelle version. 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 champ Chemin de la clé ou URI de clé s'affiche, la clé sélectionnée n'est pas une clé externe coordonnée.
Pour confirmer que vous souhaitez créer une nouvelle version de clé, cliquez sur Créer une version.
La nouvelle version de clé affiche l'état Génération en attente. Pour les clés symétriques, les versions de clé créées manuellement ne sont pas automatiquement définies comme version de clé primaire. Vous pouvez définir votre nouvelle version de clé comme version principale.
gcloud CLI
Pour créer une version de clé symétrique et la définir comme version 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 version de clé symétrique autre que la version 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 la rotation d'un EKM Cloud EKM géré manuellement via une clé VPC
Commencez par alterner le matériel de clé externe dans votre gestionnaire de clés externe. Si cela génère un nouveau chemin d'accès de clé, vous devez effectuer une rotation ou créer une version de clé Cloud EKM avec ce nouveau chemin d'accès. Pour les clés de chiffrement symétriques, effectuez une rotation de la clé Cloud EKM et spécifiez le nouveau chemin d'accès de la clé à partir de votre gestionnaire de clés externe. Pour les clés asymétriques, créez une version de clé et spécifiez le nouveau chemin d'accès de la clé.
La rotation ou la création d'une version de clé entraîne le chiffrement de toutes les données nouvellement créées protégées par cette clé à l'aide de cette nouvelle version. 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 clé dans le système partenaire de gestion des clés externes ne change pas, mais que le chemin d'accès de la clé change, vous pouvez mettre à jour le chemin d'accès externe de la clé sans rotation de la clé.
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 Alterner la clé.
Pour Chemin de la clé, saisissez le chemin d'accès de la nouvelle version.
Cliquez sur Alterner la clé pour confirmer.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer la Google Cloud CLI ou passer à la dernière version en date.
Pour créer une version de clé symétrique et la définir comme version 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 \ --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ésEXTERNAL_KEY_PATH
: chemin d'accès à la nouvelle version de clé externe.
Pour créer une version de clé asymétrique ou une version de clé symétrique autre que la version 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ésEXTERNAL_KEY_PATH
: chemin d'accès à la nouvelle version de 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 n'importe quelle autre version de clé Cloud KMS.
Effectuer la rotation d'un Cloud EKM géré manuellement à l'aide d'une clé Internet
Commencez par alterner le matériel de clé externe dans votre gestionnaire de clés externe. Si cela entraîne un nouvel URI, vous devez effectuer une rotation ou créer une nouvelle version de clé Cloud EKM avec ce nouvel URI. Pour les clés de chiffrement symétriques, effectuez une rotation de la clé Cloud EKM et spécifiez le nouvel URI de clé à partir de votre gestionnaire de clés externe. Pour les clés asymétriques, créez une version de clé et spécifiez le nouvel URI de la clé.
La rotation ou la création d'une version de clé entraîne le chiffrement de toutes les données nouvellement créées protégées par cette clé à l'aide de cette nouvelle version. 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 clé du 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 d'rotation de la clé.
Console
Dans la console Google Cloud, accédez à la page 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 les clés asymétriques.
Saisissez le nouvel URI de la clé, puis sélectionnez Alterner la clé pour les clés symétriques ou Créer une version pour les clés asymétriques.
La nouvelle version de clé devient la version primaire.
gcloud CLI
Pour créer une version de clé symétrique et la définir comme version 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 version de clé externe.
Pour créer une version de clé asymétrique ou une version de clé symétrique autre que la version primaire, exécutez 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 version de clé externe.