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 faire pivoter les clés, demandez à votre administrateur de vous accorder 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 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 les clés :
-
Modifier la version de clé principale :
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
-
Rechiffrer 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 seul utilisateur disposant d'un rôle personnalisé contenant toutes ces autorisations peut faire pivoter les clés et rechiffrer les données lui-même. Les utilisateurs disposant du rôle Administrateur Cloud KMS et du rôle Chiffreur/Déchiffreur de clés cryptographiques Cloud KMS peuvent collaborer pour faire pivoter les clés et rechiffrer les données. Respectez le principe du moindre privilège lorsque vous attribuez des rôles. Pour en savoir plus, consultez 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 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. La destruction des 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 automatiquement la période de rotation et la prochaine date de rotation. Vous pouvez choisir d'utiliser les valeurs par défaut ou d'en spécifier d'autres.
Pour spécifier une période de rotation et une date de début différentes, effectuez la procédure de création de la clé, mais effectuez les étapes ci-dessous avant de cliquer sur le bouton 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 de À partir du pour que la première rotation automatique commence une période de rotation des clés après la création de la clé.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer ou mettre à jour 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 qui inclut la cléLOCATION
: emplacement Cloud KMS du trousseau de clés.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 ne doit pas être inférieure à un jour ni supérieure à 100 ans. Pour en savoir plus, consultez CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: code temporel auquel effectuer la première rotation (par exemple,2023-01-01T01:02:03
). Vous pouvez omettre--next-rotation-time
pour programmer la première rotation pour 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
: 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 ne doit pas être inférieure à un jour ni supérieure à 100 ans. Pour en savoir plus, consultez CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: code temporel auquel effectuer la première 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 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 qui inclut la cléLOCATION
: emplacement Cloud KMS du trousseau de clés.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 ne doit pas être inférieure à un jour ni supérieure à 100 ans. Pour en savoir plus, consultez CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: code temporel auquel effectuer la prochaine rotation, par exemple2023-01-01T01:02:03
. Vous pouvez omettre--next-rotation-time
pour planifier la prochaine rotation pour une période de rotation à 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
:
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 ne doit pas être inférieure à un jour ni supérieure à 100 ans. Pour en savoir plus, consultez CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: code temporel auquel effectuer la prochaine rotation, par exemple2023-01-01T01:02:03
. Pour en savoir plus, consultez la sectionCryptoKey.nextRotationTime
.
Effectuer une 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 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 qui inclut 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 manuellement la rotation d'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 primaire, consultez Définir une version de clé existante comme version primaire.
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 principale de la clé
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 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 qui inclut 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és.KEY_RING
: nom du trousseau de clés qui inclut 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 des cas exceptionnels, la propagation de cette modification peut prendre jusqu'à trois heures. Pendant ce temps, la version primaire 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é 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 et sélectionnez Jamais (rotation manuelle).
Dans l'invite, cliquez sur Enregistrer.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer ou mettre à jour 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 qui inclut 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 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 et protégées par cette clé à l'aide de 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 à rendre le matériel de clé de la version précédente disponible pour utilisation.
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 vous voyez un champ Chemin d'accès à la clé ou URI de la clé, cela signifie que la clé sélectionnée n'est pas une clé externe coordonnée.
Pour confirmer que vous souhaitez créer une version de clé, cliquez sur Créer une version.
La nouvelle version de clé s'affiche avec 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 clé primaire.
CLI gcloud
Pour créer une version de clé symétrique et la définir comme version principale, utilisez 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 qui inclut 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 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
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé.KEY_RING
: nom du trousseau de clés qui inclut la cléLOCATION
: emplacement Cloud KMS du trousseau de clés.
Faire pivoter une clé Cloud EKM gérée manuellement via VPC
Commencez par effectuer la rotation du matériel de clé externe dans votre gestionnaire de clés externe. Si cela génère un nouveau chemin d'accès à la clé, vous devez effectuer la rotation ou créer une version de clé Cloud EKM avec le nouveau chemin d'accès. Pour les clés de chiffrement symétriques, alternez la clé Cloud EKM et spécifiez le nouveau chemin d'accès à la clé depuis 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 à 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 et protégées par cette clé à l'aide de 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 à rendre le matériel de clé de la version précédente disponible pour utilisation.
Si le matériel de la clé dans le système partenaire de gestion des clés externes ne change pas, mais que le chemin d'accès à la clé change, vous pouvez mettre à jour le chemin d'accès externe de la clé sans effectuer la 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 Effectuer une rotation de la clé.
Dans le champ Chemin d'accès à la clé, saisissez le chemin d'accès à la nouvelle version.
Cliquez sur Faire pivoter la clé pour confirmer.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer ou mettre à jour Google Cloud CLI.
Pour créer une version de clé symétrique et la définir comme version principale, utilisez 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 qui inclut 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 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 \ --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 qui inclut 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 n'importe quelle autre version de clé Cloud KMS.
Faire pivoter une clé Internet Cloud EKM gérée manuellement
Commencez par effectuer la rotation du matériel de clé externe dans votre gestionnaire de clés externe. Si cela génère un nouvel URI, vous devez effectuer une rotation ou créer une version de clé Cloud EKM avec le nouvel URI. Pour les clés de chiffrement symétriques, effectuez la rotation de la clé Cloud EKM et spécifiez le nouvel URI de clé depuis 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 clé.
La rotation ou la création d'une version de clé entraîne le chiffrement de toutes les données nouvellement créées et protégées par cette clé à l'aide de 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 à rendre le matériel de clé de la version précédente disponible pour utilisation.
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 à la page Gestion des clés.
Sélectionnez le trousseau de clés, puis la clé.
Sélectionnez Faire pivoter la clé pour les clés symétriques ou Créer une version pour les clés asymétriques.
Saisissez le nouvel URI de clé, puis sélectionnez Effectuer une rotation de 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.
CLI gcloud
Pour créer une version de clé symétrique et la définir comme version principale, utilisez 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 qui inclut la cléLOCATION
: emplacement Cloud KMS du trousseau de clés.EXTERNAL_KEY_URI
: URI de la clé de la nouvelle version de clé externe.
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 qui inclut la cléLOCATION
: emplacement Cloud KMS du trousseau de clés.EXTERNAL_KEY_URI
: URI de la clé de la nouvelle version de clé externe.
Étapes suivantes
- Après avoir fait pivoter une clé, vous pouvez rechiffrer les données qui ont été chiffrées avec cette clé.
- Une fois vos données rechiffré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.