Ce document explique comment chiffrer et déchiffrer des données à l'aide de clés KMS (Key Management System) avec la CLI gdcloud.
Ce document s'adresse aux audiences du groupe d'opérateurs d'applications qui doivent effectuer des opérations cryptographiques dans des projets GDC. Pour en savoir plus, consultez la documentation sur les audiences pour GDC sous air gap.
Avant de commencer
Avant de chiffrer ou de déchiffrer des données, vous devez disposer des autorisations nécessaires et préparer votre environnement.
Demander des rôles IAM
Pour chiffrer et déchiffrer des données, contactez l'administrateur de l'organisation IAM pour demander le rôle Développeur KMS (kms-developer) dans l'espace de noms de votre projet.
Préparer votre environnement
Téléchargez et installez la CLI gdcloud, si ce n'est pas déjà fait.
Chiffrer des données
Pour chiffrer des données, utilisez la commande gdcloud kms keys encrypt. Cette commande chiffre un fichier en texte brut donné à l'aide de la clé AEAD et l'écrit dans un fichier de texte chiffré nommé.
Pour chiffrer des données, transmettez le nom de la clé et les éléments suivants :
gdcloud kms keys encrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \ --plaintext-file=PLAINTEXT_PATH \ --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \ --ciphertext-file=CIPHERTEXT_PATHRemplacez les variables suivantes :
- NAMESPACE : espace de noms du projet, par exemple
kms-test1. - KEY_NAME : nom de la clé utilisée pour chiffrer le texte brut, par exemple
key-1. - PLAINTEXT_PATH : chemin d'accès au fichier contenant le texte brut à chiffrer.
- ADDITIONAL_AUTHENTICATED_DATA_FILE : fichier facultatif contenant des données authentifiées supplémentaires (AAD). Les données authentifiées supplémentaires sont utilisées pour les contrôles d'intégrité et protègent vos données contre une attaque par adjoint confus. La taille des données d'authentification supplémentaires et du texte brut est limitée à 64 Ko.
- CIPHERTEXT_PATH : chemin d'accès au fichier contenant le texte brut chiffré.
Après avoir exécuté la commande, vous voyez un fichier que vous avez spécifié dans l'option
--ciphertext-filequi contient le contenu chiffré du fichier en texte brut.- NAMESPACE : espace de noms du projet, par exemple
Déchiffrer des données
Pour déchiffrer des données, utilisez la commande gdcloud kms keys decrypt. Cette commande déchiffre un fichier de texte chiffré donné à l'aide de la clé AEAD et l'écrit dans un fichier de texte brut nommé.
Pour déchiffrer le texte chiffré, transmettez le nom de la clé et les éléments suivants :
gdcloud kms keys decrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \ --ciphertext-file=CIPHERTEXT_PATH \ --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \ --plaintext-file=PLAINTEXT_PATHRemplacez les variables suivantes :
- NAMESPACE : espace de noms du projet.
- KEY_NAME : nom de la clé utilisée pour chiffrer le texte brut.
- CIPHERTEXT_PATH : chemin d'accès au fichier que vous souhaitez déchiffrer.
- ADDITIONAL_AUTHENTICATED_DATA_FILE : fichier facultatif contenant des données authentifiées supplémentaires (AAD). Les données authentifiées supplémentaires sont utilisées pour les contrôles d'intégrité et protègent vos données contre une attaque par substitution d'identité. La taille de l'AAD et du texte brut est limitée à 64 Ko.
- PLAINTEXT_PATH : chemin d'accès au fichier contenant le texte brut déchiffré.
Après avoir exécuté la commande, vous verrez un fichier que vous avez spécifié dans l'option
--plaintext-filecontenant les données déchiffrées.