Crea claves de encriptación con Cloud KMS
En esta guía de inicio rápido, se muestra cómo crear y usar claves de encriptación con Cloud Key Management Service en un proyecto de tu propiedad. En estas instrucciones, se usa la consola de Google Cloud para crear llaveros, claves y versiones de claves en Cloud KMS. Si deseas obtener instrucciones que usen otros métodos, consulta las Guías prácticas.
En esta guía de inicio rápido, se usa la línea de comandos para enviar solicitudes a la API de Cloud KMS. A fin de ver ejemplos de programación que usen las bibliotecas cliente para enviar solicitudes a la API de Cloud KMS, consulta Encriptación y desencriptación.
Antes de comenzar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud KMS API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud KMS API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
Claves y llaveros de claves
Para encriptar y desencriptar contenido, necesitarás una clave de Cloud KMS, que es parte de un llavero de claves.
Crea un llavero de claves denominado test
y una clave con el nombre quickstart
. Consulta la descripción general de la jerarquía de objetos para obtener más información sobre estos objetos y cómo se relacionan.
gcloud kms keyrings create "test" \
--location "global"
gcloud kms keys create "quickstart" \
--location "global" \
--keyring "test" \
--purpose "encryption"
Puedes usar la opción list
para ver el nombre y los metadatos de la clave que acabas de crear.
gcloud kms keys list \
--location "global" \
--keyring "test"
Deberías ver lo siguiente:
NAME PURPOSE PRIMARY_STATE projects/project-id/locations/global/keyRings/test/cryptoKeys/quickstart ENCRYPT_DECRYPT ENABLED
Encripta datos
Ahora que tienes una clave, puedes usarla para encriptar texto o contenido binario.
Almacena algo de texto para encriptar en un archivo llamado “mysecret.txt”.
echo -n "Some text to be encrypted" > mysecret.txt
Para encriptar los datos con gcloud kms encrypt
, proporciona tu información de clave, especifica el nombre del archivo de texto sin formato que se debe encriptar y especifica el nombre del archivo que contendrá el contenido encriptado:
gcloud kms encrypt \
--location "global" \
--keyring "test" \
--key "quickstart" \
--plaintext-file ./mysecret.txt \
--ciphertext-file ./mysecret.txt.encrypted
El método encrypt
guarda tu contenido encriptado en el archivo que especifica la marca --ciphertext-file
.
Desencripta contenido cifrado
Para desencriptar los datos con gcloud kms decrypt
, proporciona tu información de clave, especifica el nombre del archivo encriptado (archivo de cifrado) a desencriptar, y especifica el nombre del archivo que contendrá el contenido desencriptado:
gcloud kms decrypt \
--location "global" \
--keyring "test" \
--key "quickstart" \
--ciphertext-file ./mysecret.txt.encrypted \
--plaintext-file ./mysecret.txt.decrypted
El método decrypt
guarda tu contenido desencriptado en el archivo que especifica la marca --plaintext-file
.
A fin de desencriptar contenido, debes utilizar la misma clave que usaste para encriptarlo.
Realiza una limpieza
Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.
Crea una lista de versiones disponibles para tu clave:
gcloud kms keys versions list \
--location "global" \
--keyring "test" \
--key "quickstart"
Para destruir una versión, ejecuta el siguiente comando, reemplazando key-version por el número de la versión de la clave que se destruirá:
gcloud kms keys versions destroy key-version \ --location "global" \ --keyring "test" \ --key "quickstart"
Próximos pasos
- Comienza a usar la API.
- Revisa la referencia de la API.
- Obtén más información para encriptar los datos en reposo.