En este documento, se describe cómo encriptar y desencriptar datos con claves del sistema de administración de claves (KMS) con la CLI de gdcloud.
Este documento está dirigido a los públicos del grupo de operadores de aplicaciones que necesitan realizar operaciones criptográficas en proyectos de GDC. Para obtener más información, consulta Públicos de la documentación de GDC aislado.
Antes de comenzar
Antes de encriptar o desencriptar datos, debes tener los permisos necesarios y preparar tu entorno.
Solicita roles de IAM
Para encriptar y desencriptar datos, comunícate con el administrador de la organización de IAM para solicitar el rol de
desarrollador de KMS (kms-developer) en el espacio de nombres de tu proyecto.
Prepara el entorno
Encripta datos
Para encriptar datos, usa el comando gdcloud kms keys encrypt. Este comando encripta un
archivo de texto simple determinado con la clave AEAD y lo escribe en un archivo de texto cifrado
con nombre.
Para encriptar datos, pasa el nombre de la clave y lo siguiente:
gdcloud kms keys encrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \ --plaintext-file=PLAINTEXT_PATH \ --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \ --ciphertext-file=CIPHERTEXT_PATHReemplaza las siguientes variables:
- NAMESPACE: Es el espacio de nombres del proyecto, por ejemplo,
kms-test1. - KEY_NAME: Es el nombre de la clave que se usa para encriptar el
texto sin formato, por ejemplo:
key-1. - PLAINTEXT_PATH: Es la ruta de acceso al archivo que contiene el texto simple que se encriptará.
- ADDITIONAL_AUTHENTICATED_DATA_FILE: Es un archivo opcional que contiene datos autenticados adicionales (AAD). Los AAD se usan para las verificaciones de integridad y protegen tus datos de un ataque de diputado confundido. Los datos de autenticación adicionales (AAD) y el texto simple tienen un límite de tamaño de 64 KB cada uno.
- CIPHERTEXT_PATH: Es la ruta de acceso al archivo que contiene el texto sin formato encriptado.
Después de ejecutar el comando, verás un archivo que especificaste en la marca
--ciphertext-fileque contiene el contenido encriptado del archivo de texto sin formato.- NAMESPACE: Es el espacio de nombres del proyecto, por ejemplo,
Desencripta datos
Para desencriptar datos, usa el comando gdcloud kms keys decrypt. Este comando desencripta un
archivo de texto cifrado determinado con la clave AEAD y lo escribe en un archivo de texto simple
con nombre.
Para desencriptar el texto cifrado, pasa el nombre de la clave y lo siguiente:
gdcloud kms keys decrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \ --ciphertext-file=CIPHERTEXT_PATH \ --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \ --plaintext-file=PLAINTEXT_PATHReemplaza las siguientes variables:
- NAMESPACE: Es el espacio de nombres del proyecto.
- KEY_NAME: Es el nombre de la clave que se usa para encriptar el texto simple.
- CIPHERTEXT_PATH: Es la ruta de acceso del archivo que deseas desencriptar.
- ADDITIONAL_AUTHENTICATED_DATA_FILE: Es un archivo opcional que contiene datos autenticados adicionales (AAD). Los AAD se usan para las verificaciones de integridad y protegen tus datos de un ataque de diputado confundido. Los datos de autenticación adicionales (AAD) y el texto simple tienen un límite de tamaño de 64 KB cada uno.
- PLAINTEXT_PATH: Es la ruta de acceso al archivo que contiene el texto sin formato desencriptado.
Después de ejecutar el comando, verás un archivo que especificaste en la marca
--plaintext-fileque contiene los datos desencriptados.