En esta página, se muestra cómo rotar una clave de forma manual o automática. Para obtener más información sobre la rotación de claves en general, consulta Rotación de claves.
Roles obligatorios
Para obtener los permisos que necesitas para rotar claves, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu clave:
-
Administrador de Cloud KMS (
roles/cloudkms.admin
) -
Vuelve a encriptar los datos:
Encriptador/desencriptador de CryptoKey de Cloud KMS (
roles/cloudkms.cryptoKeyEncrypterDecrypter
)
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para rotar claves. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para rotar claves:
-
Cambia la versión de la clave primaria:
cloudkms.cryptoKeys.update
-
Cómo cambiar o inhabilitar el giro automático:
cloudkms.cryptoKeys.update
-
Crea una versión de clave nueva:
cloudkms.cryptoKeyVersions.create
-
Inhabilita las versiones de clave anteriores:
cloudkms.cryptoKeyVersions.update
-
Vuelve a encriptar los datos:
-
cloudkms.cryptoKeyVersions.useToDecrypt
-
cloudkms.cryptoKeyVersions.useToEncrypt
-
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Un solo usuario con un rol personalizado que contenga todos estos permisos puede rotar las claves y volver a encriptar los datos por su cuenta. Los usuarios con el rol de administrador de Cloud KMS y el rol de encriptador/desencriptador de CryptoKey de Cloud KMS pueden trabajar juntos para rotar las claves y volver a encriptar los datos. Sigue el principio de privilegio mínimo cuando asignes roles. Para obtener más detalles, consulta Permisos y roles.
Cuando rotas una clave, los datos que se encriptaron con versiones de claves anteriores no se vuelven a encriptar de forma automática. Para obtener más información, consulta Desencriptar y volver a encriptar. La rotación de una clave no inhabilita ni destruye de forma automática ninguna versión de clave existente. Destruir las versiones de claves que ya no se necesitan ayuda a reducir los costos.
Configura la rotación automática
Para configurar la rotación automática cuando creas una clave nueva, haz lo siguiente:
Console
Cuando usas la Google Cloud consola para crear una clave, Cloud KMS establece el período de rotación y la próxima fecha de rotación de forma automática. Puedes usar los valores predeterminados o especificar otros valores.
Para especificar un período de rotación y una fecha de inicio diferentes, haz lo siguiente durante la creación de la clave, antes de hacer clic en el botón Crear:
En Período de rotación de claves, selecciona una opción.
En A partir del, selecciona la fecha en la que deseas que se produzca la primera rotación automática. Puedes dejar A partir del en su valor predeterminado para iniciar la primera rotación automática un período de rotación de claves después de que crees la clave.
gcloud
Para usar Cloud KMS en la línea de comandos, primero instala o actualiza a la versión más reciente de 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
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.ROTATION_PERIOD
: Es el intervalo para rotar la clave, por ejemplo,30d
para rotar la clave cada 30 días. El período de rotación debe ser de al menos 1 día y, como máximo, de 100 años. Para obtener más información, consulta CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: Es la marca de tiempo en la que se completará la primera rotación, por ejemplo,2023-01-01T01:02:03
. Puedes omitir--next-rotation-time
para programar la primera rotación para un período de rotación a partir del momento en que ejecutas el comando. Para obtener más información, consultaCryptoKey.nextRotationTime
.
Para obtener información sobre todas las marcas y los valores posibles, ejecuta el comando con la marca --help
.
C#
Para ejecutar este código, primero configura un entorno de desarrollo de C# e instala el SDK de C# para Cloud KMS.
Go
Para ejecutar este código, primero configura un entorno de desarrollo de Go y, luego, instala el SDK de Go para Cloud KMS.
Java
Para ejecutar este código, primero configura un entorno de desarrollo de Java y, luego, instala el SDK de Java para Cloud KMS.
Node.js
Para ejecutar este código, primero configura un entorno de desarrollo de Node.js y, luego, instala el SDK de Node.js para Cloud KMS.
PHP
Para ejecutar este código, primero obtén información sobre cómo usar PHP en Google Cloud y, luego, instala el SDK de PHP para Cloud KMS.
Python
Para ejecutar este código, primero configura un entorno de desarrollo de Python y, luego, instala el SDK de Python para Cloud KMS.
Ruby
Para ejecutar este código, primero configura un entorno de desarrollo de Ruby y, luego, instala el SDK de Ruby para Cloud KMS.
API
En estos ejemplos, se usa curl como un cliente HTTP para demostrar el uso de la API. Para obtener más información sobre el control de acceso, consulta Accede a la API de Cloud KMS.
Para crear una clave, usa el método 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"}'
Reemplaza lo siguiente:
PURPOSE
: Es el propósito de la clave.ROTATION_PERIOD
: Es el intervalo para rotar la clave, por ejemplo,30d
para rotar la clave cada 30 días. El período de rotación debe ser de al menos 1 día y, como máximo, de 100 años. Para obtener más información, consulta CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: Es la marca de tiempo en la que se completará la primera rotación, por ejemplo,2023-01-01T01:02:03
. Para obtener más información, consulta:CryptoKey.nextRotationTime
.
Para configurar la rotación automática en una clave existente, haz lo siguiente:
Console
Ve a la página Administración de claves en la consola de Google Cloud .
Haz clic en el nombre del llavero de claves que contiene la clave para la que deseas agregar una programación de rotación.
Haz clic en la clave a la que deseas agregar una programación de rotación.
En el encabezado, haz clic en Editar período de rotación.
En el mensaje, elige valores nuevos para los campos Período de rotación y A partir de.
En la ventana, haz clic en Guardar.
gcloud
Para usar Cloud KMS en la línea de comandos, primero instala o actualiza a la versión más reciente de Google Cloud CLI.
gcloud kms keys update KEY_NAME \ --location LOCATION \ --keyring KEY_RING \ --rotation-period ROTATION_PERIOD \ --next-rotation-time NEXT_ROTATION_TIME
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.ROTATION_PERIOD
: Es el intervalo para rotar la clave, por ejemplo,30d
para rotar la clave cada 30 días. El período de rotación debe ser de al menos 1 día y, como máximo, de 100 años. Para obtener más información, consulta CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: Es la marca de tiempo en la que se debe completar la próxima rotación, por ejemplo,2023-01-01T01:02:03
. Puedes omitir--next-rotation-time
para programar la próxima rotación para un período de rotación a partir del momento en que ejecutas el comando. Para obtener más información, consultaCryptoKey.nextRotationTime
.
Para obtener información sobre todas las marcas y los valores posibles, ejecuta el comando con la marca --help
.
C#
Para ejecutar este código, primero configura un entorno de desarrollo de C# e instala el SDK de C# para Cloud KMS.
Go
Para ejecutar este código, primero configura un entorno de desarrollo de Go y, luego, instala el SDK de Go para Cloud KMS.
Java
Para ejecutar este código, primero configura un entorno de desarrollo de Java y, luego, instala el SDK de Java para Cloud KMS.
Node.js
Para ejecutar este código, primero configura un entorno de desarrollo de Node.js y, luego, instala el SDK de Node.js para Cloud KMS.
PHP
Para ejecutar este código, primero obtén información sobre cómo usar PHP en Google Cloud y, luego, instala el SDK de PHP para Cloud KMS.
Python
Para ejecutar este código, primero configura un entorno de desarrollo de Python y, luego, instala el SDK de Python para Cloud KMS.
Ruby
Para ejecutar este código, primero configura un entorno de desarrollo de Ruby y, luego, instala el SDK de Ruby para Cloud KMS.
API
En estos ejemplos, se usa curl como un cliente HTTP para demostrar el uso de la API. Para obtener más información sobre el control de acceso, consulta Accede a la API de Cloud KMS.
Para actualizar una clave, usa el método 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"}'
Reemplaza lo siguiente:
ROTATION_PERIOD
: Es el intervalo para rotar la clave, por ejemplo,30d
para rotar la clave cada 30 días. El período de rotación debe ser de al menos 1 día y, como máximo, de 100 años. Para obtener más información, consulta CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: Es la marca de tiempo en la que se debe completar la próxima rotación, por ejemplo,2023-01-01T01:02:03
. Para obtener más información, consulta:CryptoKey.nextRotationTime
.
Rota una clave de forma manual
Primero, crea una versión de clave nueva:
Console
Ve a la página Administración de claves en la consola de Google Cloud .
Haz clic en el nombre del llavero de claves que contiene la clave para la que crearás una versión de clave nueva.
Haz clic en la clave para la que crearás una versión de clave nueva.
En el encabezado, haz clic en Rotar.
En el mensaje, haz clic en Rotar para confirmar.
gcloud
Para usar Cloud KMS en la línea de comandos, primero instala o actualiza a la versión más reciente de Google Cloud CLI.
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.
A las versiones de claves se les asigna un número de manera secuencial.
Para obtener información sobre todas las marcas y los valores posibles, ejecuta el comando con la marca --help
.
C#
Para ejecutar este código, primero configura un entorno de desarrollo de C# e instala el SDK de C# para Cloud KMS.
Go
Para ejecutar este código, primero configura un entorno de desarrollo de Go y, luego, instala el SDK de Go para Cloud KMS.
Java
Para ejecutar este código, primero configura un entorno de desarrollo de Java y, luego, instala el SDK de Java para Cloud KMS.
Node.js
Para ejecutar este código, primero configura un entorno de desarrollo de Node.js y, luego, instala el SDK de Node.js para Cloud KMS.
PHP
Para ejecutar este código, primero obtén información sobre cómo usar PHP en Google Cloud y, luego, instala el SDK de PHP para Cloud KMS.
Python
Para ejecutar este código, primero configura un entorno de desarrollo de Python y, luego, instala el SDK de Python para Cloud KMS.
Ruby
Para ejecutar este código, primero configura un entorno de desarrollo de Ruby y, luego, instala el SDK de Ruby para Cloud KMS.
API
En estos ejemplos, se usa curl como un cliente HTTP para demostrar el uso de la API. Para obtener más información sobre el control de acceso, consulta Accede a la API de Cloud KMS.
Para rotar una clave de forma manual, primero crea una versión de clave nueva llamando al método 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"
Este comando crea una versión de clave nueva, pero no la establece como la versión principal.
Para establecer tu nueva versión de clave como principal, consulta Cómo configurar una versión existente como la clave primaria principal.
Si es necesario, vuelve a encriptar los datos que se encriptaron con la versión de clave anterior.
Configura una versión existente como la versión de clave primaria
A fin de establecer una versión de clave diferente como la versión principal de una clave, actualízala con la nueva información de la versión principal. Se debe habilitar una versión de clave antes de configurarla como la versión principal.
Console
Ve a la página Administración de claves en la consola de Google Cloud .
Haz clic en el nombre del llavero de claves que contiene la clave cuya versión principal deseas actualizar.
Haz clic en la clave cuya versión principal deseas actualizar.
En la fila correspondiente a la versión de clave que deseas convertir en principal, haz clic en Ver más
.Haz clic en Crear versión principal en el menú.
En el mensaje de confirmación, haz clic en Convertir en principal.
gcloud
Para usar Cloud KMS en la línea de comandos, primero instala o actualiza a la versión más reciente de Google Cloud CLI.
gcloud kms keys update KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --primary-version KEY_VERSION
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.- KEY_VERSION: Es el número de versión de la nueva versión de la clave primaria.
Para obtener información sobre todas las marcas y los valores posibles, ejecuta el comando con la marca --help
.
C#
Para ejecutar este código, primero configura un entorno de desarrollo de C# e instala el SDK de C# para Cloud KMS.
Go
Para ejecutar este código, primero configura un entorno de desarrollo de Go y, luego, instala el SDK de Go para Cloud KMS.
Java
Para ejecutar este código, primero configura un entorno de desarrollo de Java y, luego, instala el SDK de Java para Cloud KMS.
Node.js
Para ejecutar este código, primero configura un entorno de desarrollo de Node.js y, luego, instala el SDK de Node.js para Cloud KMS.
PHP
Para ejecutar este código, primero obtén información sobre cómo usar PHP en Google Cloud y, luego, instala el SDK de PHP para Cloud KMS.
Ruby
Para ejecutar este código, primero configura un entorno de desarrollo de Ruby y, luego, instala el SDK de Ruby para Cloud KMS.
Python
Para ejecutar este código, primero configura un entorno de desarrollo de Python y, luego, instala el SDK de Python para Cloud KMS.
API
En estos ejemplos, se usa curl como un cliente HTTP para demostrar el uso de la API. Para obtener más información sobre el control de acceso, consulta Accede a la API de Cloud KMS.
Cambia la versión de la clave primaria llamando al método 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"}'
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto que contiene el llavero de claves.LOCATION
: la ubicación de Cloud KMS del llavero de claves.KEY_RING
: el nombre del llavero de claves que incluye la claveKEY_NAME
: el nombre de la clave.- KEY_VERSION: Es el número de versión de la nueva versión de la clave primaria.
Cuando cambias la versión de la clave primaria, el cambio suele volverse coherente en 1 minuto. Sin embargo, en casos excepcionales, este cambio puede tardar hasta 3 horas en propagarse. Durante este tiempo, es posible que se use la versión principal anterior para encriptar los datos. Para obtener más información, consulta Coherencia de recursos de Cloud KMS.
Inhabilita la rotación automática
Para inhabilitar la rotación automática de una clave, borra el programa de rotación de la clave:
Console
Ve a la página Administración de claves en la consola de Google Cloud .
Haz clic en el nombre del llavero de claves que contiene la clave para la que deseas quitar la programación de rotación.
Haz clic en la clave de la que deseas quitar la programación de rotación.
En el encabezado, haz clic en Editar período de rotación.
En el mensaje, haz clic en el campo Período de rotación y selecciona Nunca (rotación manual).
En la ventana, haz clic en Guardar.
gcloud
Para usar Cloud KMS en la línea de comandos, primero instala o actualiza a la versión más reciente de Google Cloud CLI.
gcloud kms keys update KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --remove-rotation-schedule
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.
Para obtener información sobre todas las marcas y los valores posibles, ejecuta el comando con la marca --help
.
C#
Para ejecutar este código, primero configura un entorno de desarrollo de C# e instala el SDK de C# para Cloud KMS.
Go
Para ejecutar este código, primero configura un entorno de desarrollo de Go y, luego, instala el SDK de Go para Cloud KMS.
Java
Para ejecutar este código, primero configura un entorno de desarrollo de Java y, luego, instala el SDK de Java para Cloud KMS.
Node.js
Para ejecutar este código, primero configura un entorno de desarrollo de Node.js y, luego, instala el SDK de Node.js para Cloud KMS.
PHP
Para ejecutar este código, primero obtén información sobre cómo usar PHP en Google Cloud y, luego, instala el SDK de PHP para Cloud KMS.
Ruby
Para ejecutar este código, primero configura un entorno de desarrollo de Ruby y, luego, instala el SDK de Ruby para Cloud KMS.
Python
Para ejecutar este código, primero configura un entorno de desarrollo de Python y, luego, instala el SDK de Python para Cloud KMS.
API
En estos ejemplos, se usa curl como un cliente HTTP para demostrar el uso de la API. Para obtener más información sobre el control de acceso, consulta Accede a la API de Cloud KMS.
Para actualizar una clave, usa el método 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}'
Para obtener más detalles sobre rotationPeriod
y nextRotationTime
, consulta keyRings.cryptoKeys
.
Rota una clave externa
Rota una clave externa coordinada
Puedes configurar la rotación automática para las claves externas simétricas coordinadas. También puedes crear manualmente una nueva versión de clave para las claves externas coordinadas simétricas o asimétricas.
La rotación o la creación de una versión de clave nueva hace que todos los datos recién creados y protegidos con esa clave se encripten con la versión de clave nueva. Los datos protegidos con una versión de clave anterior no se vuelven a encriptar. Como resultado, tu administrador de claves externas debe seguir haciendo que el material de clave de la versión anterior esté disponible para su uso.
Para crear una versión de clave nueva para una clave externa coordinada, completa los siguientes pasos:
Console
En la consola de Google Cloud , ve a la página Administración de claves.
Selecciona el llavero de claves y, luego, la clave.
Haz clic en Crear versión. Un mensaje indica que tu nueva versión de clave se generará tanto en Cloud KMS como en tu EKM. Si ves un campo Ruta de acceso a la clave o URI de la clave, la clave seleccionada no es una clave externa coordinada.
Para confirmar que deseas crear una versión de clave nueva, haz clic en Crear versión.
La nueva versión de la clave aparecerá en estado Pending generation. En el caso de las claves simétricas, las versiones de claves creadas de forma manual no se configuran automáticamente como la versión de clave primaria. Puedes establecer tu nueva versión de clave como principal.
gcloud CLI
Para crear una versión de clave simétrica nueva y establecerla como la versión de clave primaria, usa el comando kms keys versions create
con la marca --primary
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --primary
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.
Para crear una versión de clave asimétrica nueva o una versión de clave simétrica nueva que no sea la versión de clave primaria, usa el comando kms keys versions
create
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.
Rota una clave de Cloud EKM administrada manualmente a través de una VPC
Primero, rota el material de la clave externa en tu administrador de claves externas. Si eso genera una ruta de acceso a la clave nueva, debes rotar o crear una versión de clave de Cloud EKM nueva con la nueva ruta de acceso a la clave. Para las claves de encriptación simétrica, rota la clave de Cloud EKM y especifica la nueva ruta de acceso de la clave desde tu administrador de claves externo. En el caso de las claves asimétricas, crea una versión de clave nueva y especifica la ruta de acceso de la clave nueva.
La rotación o la creación de una versión de clave nueva hace que todos los datos recién creados y protegidos con esa clave se encripten con la versión de clave nueva. Los datos protegidos con una versión de clave anterior no se vuelven a encriptar. Como resultado, tu administrador de claves externas debe seguir haciendo que el material de clave de la versión anterior esté disponible para su uso.
Si el material de clave del sistema de administración de claves externas no cambia, pero la ruta de acceso a la clave sí, puedes actualizar la ruta de acceso externa de la clave sin rotar la clave.
Console
En la consola de Google Cloud , ve a la página Administración de claves.
Selecciona el llavero de claves y, luego, la clave.
Haz clic en Rotar clave.
En Ruta de acceso de la clave, ingresa la ruta de acceso de la clave para la versión nueva.
Haz clic en Rotar clave para confirmar.
gcloud
Para usar Cloud KMS en la línea de comandos, primero instala o actualiza a la versión más reciente de Google Cloud CLI.
Para crear una versión de clave simétrica nueva y establecerla como la versión de clave primaria, usa el comando kms keys versions create
con la marca --primary
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --ekm-connection-key-path EXTERNAL_KEY_PATH \ --primary
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.EXTERNAL_KEY_PATH
: Es la ruta de acceso a la nueva versión de la clave externa.
Para crear una versión de clave asimétrica nueva o una versión de clave simétrica nueva que no sea la versión de clave primaria, usa el comando kms keys versions
create
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --ekm-connection-key-path EXTERNAL_KEY_PATH
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.EXTERNAL_KEY_PATH
: Es la ruta de acceso a la nueva versión de la clave externa.
Para obtener información sobre todas las marcas y los valores posibles, ejecuta el comando con la marca --help
.
Después de que se cree la versión de clave correctamente, puedes usarla como cualquier otra versión de clave de Cloud KMS.
Rota una clave de Internet de Cloud EKM administrada manualmente
Primero, rota el material de la clave externa en tu administrador de claves externas. Si eso genera un URI nuevo, debes rotar o crear una versión de clave de Cloud EKM nueva con el URI nuevo. Para las claves de encriptación simétrica, rota la clave de Cloud EKM y especifica el nuevo URI de clave de tu administrador de claves externas. En el caso de las claves asimétricas, crea una versión de clave nueva y especifica el URI de clave nuevo.
La rotación o la creación de una versión de clave nueva hace que todos los datos recién creados y protegidos con esa clave se encripten con la versión de clave nueva. Los datos protegidos con una versión de clave anterior no se vuelven a encriptar. Como resultado, tu administrador de claves externas debe seguir haciendo que el material de clave de la versión anterior esté disponible para su uso.
Si el material de clave del sistema de administración de claves externas no cambia, pero el URI cambia, puedes actualizar el URI externo de la clave sin rotar la clave.
Console
En la consola de Google Cloud , ve a la página Administración de claves.
Selecciona el llavero de claves y, luego, la clave.
Selecciona Rotar clave para las claves simétricas o Crear versión para las claves asimétricas.
Ingresa el nuevo URI de clave y, luego, selecciona Rotar clave para las claves simétricas o Crear versión para las claves asimétricas.
La versión de clave nueva se convertirá en la versión principal.
gcloud CLI
Para crear una versión de clave simétrica nueva y establecerla como la versión de clave primaria, usa el comando kms keys versions create
con la marca --primary
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --external-key-uri EXTERNAL_KEY_URI \ --primary
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.EXTERNAL_KEY_URI
: Es el URI de la clave de la nueva versión de la clave externa.
Para crear una versión de clave asimétrica nueva o una versión de clave simétrica nueva que no sea la versión de clave primaria, usa el comando kms keys versions
create
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --external-key-uri EXTERNAL_KEY_URI
Reemplaza lo siguiente:
KEY_NAME
: el nombre de la clave.KEY_RING
: el nombre del llavero de claves que incluye la claveLOCATION
: la ubicación de Cloud KMS del llavero de claves.EXTERNAL_KEY_URI
: Es el URI de la clave de la nueva versión de la clave externa.
¿Qué sigue?
- Después de rotar una clave, puedes volver a encriptar los datos que se encriptaron con esa clave.
- Después de volver a encriptar tus datos, puedes verificar si la versión de clave está en uso.
- Después de confirmar que ya no se usa una versión de clave, puedes destruirla.