Ce document explique comment chiffrer et déchiffrer des données à l'aide de clés Key Management System (KMS) 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 les projets GDC. Pour en savoir plus, consultez Audiences pour la documentation 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 IAM de votre organisation et demandez-lui 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 gdcloud CLI, si ce n'est pas déjà fait.
Autorisations requises
Pour obtenir les autorisations nécessaires, demandez à votre administrateur IAM de l'organisation de vous accorder le rôle Développeur KMS (kms-developer) dans votre projet.
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). Le contrôle AAD permet de vérifier l'intégrité et de protéger les données contre une attaque de type "confused deputy". L'AAD et le texte brut sont chacun limités à 64 Ko.
- CIPHERTEXT_PATH : chemin d'accès au fichier contenant le texte brut chiffré.
Après avoir exécuté la commande, vous verrez un fichier que vous avez spécifié dans l'indicateur
--ciphertext-fileet qui 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). Le contrôle AAD permet de vérifier l'intégrité et de protéger les données contre une attaque de type "confused deputy". L'AAD et le texte brut sont chacun limités à 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'indicateur
--plaintext-fileet qui contient les données déchiffrées.