En esta página, se muestra cómo programar una versión de clave de Cloud Key Management Service para una configuración permanente destrucción. En Cloud KMS, el material de clave criptográfica que usas para encriptar, desencriptar, firmar y verificar que los datos se almacenen en una versión de clave. Una clave tiene cero o más versiones de claves. Cuando rotas una clave, se crea una clave nueva versión.
Destruir una versión de clave significa que el material de clave se borra de forma permanente. Cuando destruyes una versión de clave, no se borran otros detalles, como el nombre de la clave y el número de versión. Después de destruir una clave, los datos que se encriptaron con la versión de clave no se pueden desencriptar.
Como la destrucción de claves es irreversible, Cloud KMS no te permite destruir versiones de claves de inmediato. En su lugar, programa una versión de clave para su destrucción. La versión de clave permanece en el estado de destrucción programada durante un tiempo configurable. Durante el período de destrucción programada, puedes restablecer una versión de clave para cancelar su destrucción.
La duración predeterminada de la destrucción programada es de 30 días. Puedes establecer una personalizada programada para la duración de la destrucción de una clave durante la clave creación. Tu organización puede aplicar la duración mínima programada para la destrucción estableciendo el parámetro Destrucción mínima restricción de duración programada por clave en las políticas de tu organización.
También puedes administrar el acceso a la clave mediante la administración de identidades y accesos (IAM). Las operaciones de IAM son coherentes en segundos. Para obtener más información, consulta Usa IAM.
También puedes inhabilitar una versión de clave de forma temporal. Mié te recomendamos inhabilitar las versiones de claves antes de programar su destrucción, ya que es parte de tus procedimientos para garantizar que la clave se pueda destruir de manera segura. Según las políticas de tu organización, es posible que debas inhabilitar una clave de la versión antes de que puedas programarla para su destrucción. Para obtener más información controlando la destrucción de las versiones de claves con políticas de la organización, consulta Control de destrucción de la versión de clave.
En el resto de este documento, se hace referencia a la programación de una clave para su destrucción que destruir la clave, aunque la destrucción no sea inmediata.
Antes de comenzar
Comprender los riesgos
La destrucción de una versión de clave es una operación permanente. Destruir una versión de clave que aún se necesita conlleva riesgos, incluidos los siguientes:
Interrupción del servicio: Si destruyes una clave necesaria para iniciar un contenedor tus servicios o aplicaciones pueden dejar de estar disponibles.
Pérdida permanente de datos: si destruyes una clave que se usó para encriptar datos, que los datos dejen de estar disponibles. Los datos encriptados con una clave que se se considera destruida con criptografía. En algunos casos, destruir una clave puede provocar que los recursos encriptados se borren de forma permanente.
Problemas regulatorios o de cumplimiento: Si destruyes una clave que se requiere para acceder a los datos que están sujetos a un período de retención anterior a dicho período cuando el período se haya completado, podrías estar infringiendo una regla un requisito de seguridad.
Roles obligatorios
Para obtener los permisos que necesitas para destruir y restablecer versiones de claves,
pídele a tu administrador que te otorgue el rol de IAM de
administrador de Cloud KMS (roles/cloudkms.admin
) en la clave.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.
Verifica si la versión de clave está en uso
Antes de destruir una versión de clave, completa los siguientes pasos para ver si está en uso:
Consulta los detalles de seguimiento de uso de la clave de la clave. Si algún recurso está protegido por la versión de clave que quieres destruir, volver a encriptarlos con otra versión de clave.
Activa los registros para cualquier servicio o aplicación que pueda estar usando la clave versión.
Activa los registros en el proyecto de Cloud KMS que contiene la clave.
Inhabilita la versión de clave. Inhabilita la clave version evita que se use la versión de clave. Con la si la versión de clave está inhabilitada, fallará cualquier intento de usarla.
Supervisa los registros hasta asegurarte de que ninguna aplicación o servicio aún se basa en la versión de clave que inhabilitaste. Si algún error indica un error acceso a la versión de clave, configura la aplicación o el recurso que se usará a otra versión de clave.
El tiempo que dedicas a supervisar los registros antes de destruir un versión de clave depende del tipo de clave, su patrón de uso y su nivel de sensibilidad. Por ejemplo, antes de destruir una versión de clave que se usa en un proceso que se ejecuta trimestralmente, mantén inhabilitada la versión de clave hasta ese el proceso se complete con éxito.
Verifica el uso de la clave con los requisitos de cumplimiento aplicables. Por ejemplo, la versión de clave y los datos encriptados con ella pueden estar sujetos a y períodos de retención de datos.
Estos pasos te ayudan a identificar si es posible que aún se necesite una clave. Sin embargo, no pueden garantizar que ya no se necesite una versión de clave. Tu organización deben implementar procedimientos y lineamientos para garantizar que la versión de clave destrucción no tendrá efectos negativos.
Destruir una versión de clave
Puedes destruir una versión de clave habilitada o inhabilitada.
Console
En la consola de Google Cloud, ve a Administración de claves.
Marca la casilla junto a la versión de clave que deseas programar para la destrucción.
Haz clic en Destruir en el encabezado.
En el mensaje de confirmación, ingresa el nombre de la clave y, luego, haz clic en Programar destrucción.
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 destroy KEY_VERSION \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION
Reemplaza lo siguiente:
KEY_VERSION
: Es el número de versión de la clave que deseas destruir.KEY_NAME
: Es el nombre de la clave para la que deseas destruir una clave. versión.KEY_RING
: Es el nombre del llavero de claves que contiene la clave.LOCATION
: Es 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.
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.
Destruye una versión de clave llamando al CryptoKeyVersions.destroy .
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/KEY_VERSION:destroy" \ --request "POST" \ --header "authorization: Bearer TOKEN"
Si no puedes destruir una versión de clave, es posible que tu organización requiera que las versiones de claves se inhabilitarán antes de la destrucción. Intenta inhabilitar la versión de clave antes de destruirla.
Cuando envías la solicitud de destrucción, el estado de la versión de clave pasa a ser está programada para su destrucción. Una vez que haya transcurrido la duración programada para la destrucción de la clave, el estado de la versión de clave se destruirá, lo que significa que comenzó la eliminación lógica del material de la clave de los sistemas activos, y el cliente no podrá recuperarlo. Clave el material puede permanecer en los sistemas de Google hasta 45 días a partir del tiempo programado de destrucción.
A fin de recibir una alerta cuando una versión de clave está programada para su destrucción, consulta Usa Cloud Monitoring con Cloud KMS.
Las versiones de clave destruidas no son recursos facturados.
Destruye claves externas
Para quitar de forma permanente la asociación entre una clave de Cloud EKM y una externa, puedes destruir la versión de clave. Después de que haya transcurrido el período Programada para su destrucción, se destruirá la clave. Una vez que se destruye la versión de clave, ya no puedes encriptar ni desencriptar los datos que se encriptaron con la versión de clave de Cloud EKM.
Destruir una versión de clave administrada manualmente en Cloud KMS no modifica la clave en el administrador de claves externo. Te recomendamos que primero destruyas la clave o la versión de clave en Google Cloud. Después de que la versión de la clave de Cloud EKM puedes destruir el material de claves en el administrador de claves externo.
Cuando se destruye una versión de clave externa coordinada en Cloud KMS, primero se destruye la versión de clave en Google Cloud y, luego, se envía una solicitud de destrucción al EKM para destruir el material de clave externo.
Restablece una versión de clave
Durante el período en el que el estado de una versión de clave está programado para su destrucción, puedes restablecer la versión de clave enviando una solicitud de restablecimiento.
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 se restablecerá.
Haz clic en la clave cuya versión de clave deseas restablecer.
Marca la casilla junto a la versión de clave que deseas restablecer.
Haga clic en Restablecer en el encabezado.
En el mensaje de confirmación, haz clic en Restablecer.
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 restore key-version \ --key key \ --keyring key-ring \ --location location
Reemplaza key-version por la versión de la clave que deseas restablecer. Reemplaza key por el nombre de la clave. Reemplaza key-ring por el nombre del llavero de claves en el que se encuentra la clave. Reemplaza location por la ubicación de Cloud KMS para el 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.
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 restablecer una versión de clave, llama al CryptoKeyVersions.restore .
curl "https://cloudkms.googleapis.com/v1/projects/project-id/locations/location-id/keyRings/key-ring-id/cryptoKeys/crypto-key-id/cryptoKeyVersions/version-id:restore" \ --request "POST" \ --header "authorization: Bearer token"
Una vez completada la solicitud de restablecimiento, el estado de la versión de clave pasa a ser inhabilitado. Debes habilitar la clave para poder usarla.
Permisos de IAM obligatorios
Para destruir una versión de clave, el llamador necesita
cloudkms.cryptoKeyVersions.destroy
permiso de IAM en la clave,
el llavero de claves o el proyecto, la carpeta o la organización.
Para restablecer una versión de clave, el emisor necesita el permiso cloudkms.cryptoKeyVersions.restore
.
Ambos permisos se otorgan a la función de administrador de Cloud KMS (roles/cloudkms.admin
).
Cronograma de eliminación
Cloud KMS se compromete a borrar el material de claves de cliente de todas las dentro de los 45 días posteriores a la hora programada de destrucción. Esto incluye la eliminación de datos de los sistemas activos y las copias de seguridad del centro de datos. Otro cliente datos están sujetos al estándar, Cronograma de eliminación de Google Cloud de 180 días.