Descripción general de Autokey

Autokey de Cloud KMS simplifica la creación y el uso de claves de encriptación administradas por el cliente (CMEK), ya que automatiza el aprovisionamiento y la asignación. Con Autokey, los llaveros de claves, las claves y las cuentas de servicio no necesitan planificarse ni aprovisionarse antes de ser necesarios. En cambio, Autokey genera tus claves a pedido a medida que se crean tus recursos, y se basa en permisos delegados en lugar de administradores de Cloud KMS.

El uso de claves generadas por Autokey puede ayudarte a alinearte de manera coherente con los estándares de la industria y las prácticas recomendadas para la seguridad de los datos, incluido el nivel de protección de HSM, la separación de obligaciones, la rotación de claves, la ubicación y la especificidad de la clave. Autokey crea claves que siguen los lineamientos generales y los específicos del tipo de recurso para los servicios de Google Cloud que se integran en Autokey de Cloud KMS. Después de crearlas, las claves solicitadas con Autokey funcionan de manera idéntica a otras claves de Cloud HSM con la misma configuración.

Autokey también puede simplificar el uso de Terraform para la administración de claves, lo que quita la necesidad de ejecutar la infraestructura como servicio con privilegios elevados de creación de claves.

Para usar Autokey, debes tener un recurso de organización que contenga un recurso de carpeta. Para obtener más información sobre los recursos de la organización y las carpetas, consulta Jerarquía de recursos.

Autokey de Cloud KMS está disponible en todas las ubicaciones de Google Cloud en las que Cloud HSM está disponible. Para obtener más información sobre las ubicaciones de Cloud KMS, consulta Ubicaciones de Cloud KMS. No se aplican costos adicionales por usar Autokey de Cloud KMS. Las claves creadas con Autokey tienen el mismo precio que cualquier otra clave de Cloud HSM. Para obtener más información sobre los precios, consulta Precios de Cloud Key Management Service.

Cómo funciona Autokey

En esta sección, se explica cómo funciona Autokey de Cloud KMS. En este proceso, participan los siguientes roles de usuario:

Administrador de seguridad
El administrador de seguridad es un usuario responsable de administrar la seguridad a nivel de la organización o la carpeta.
Desarrollador de Autokey
El desarrollador de Autokey es un usuario responsable de crear recursos con Autokey de Cloud KMS.
Administrador de Cloud KMS
El administrador de Cloud KMS es un usuario responsable de administrar los recursos de Cloud KMS. Esta función tiene menos responsabilidades cuando se usa Autokey que cuando se usan claves creadas de forma manual.

Los siguientes agentes de servicio también participan en este proceso:

Agente de servicio de Cloud KMS
El agente de servicio para Cloud KMS en un proyecto de claves determinado. Autokey depende de que este agente de servicio tenga privilegios elevados para crear claves y llaveros de claves de Cloud KMS y establecer la política de IAM en las claves, lo que otorga permisos de encriptación y desencriptación a cada agente de servicio de recursos.
Agente de servicio de recursos
Es el agente de servicio para un servicio determinado en un proyecto de recursos determinado. Este agente de servicio debe tener permisos de encriptación y desencriptación en cualquier clave de Cloud KMS antes de poder usar esa clave para la protección con CMEK en un recurso. Autokey crea el agente de servicio de recursos cuando es necesario, le otorga los permisos necesarios para usar la clave de Cloud KMS.

El administrador de seguridad habilita Autokey de Cloud KMS

Antes de que puedas usar Autokey, el administrador de seguridad debe completar las siguientes tareas de configuración únicas:

  1. Habilita Autokey de Cloud KMS en una carpeta de recursos y, luego, identifica el proyecto de Cloud KMS que contendrá los recursos de Autokey de esa carpeta.

  2. Crea el agente de servicio de Cloud KMS y, luego, otorga privilegios de creación y asignación de claves al agente de servicio.

  3. Otorgar roles del usuario de Autokey a los usuarios desarrolladores de Autokey

Con esta configuración completa, los desarrolladores de Autokey ahora pueden activar la creación de claves de Cloud HSM a pedido. Para ver las instrucciones de configuración completas de Autokey de Cloud KMS, consulta Habilita Autokey de Cloud KMS.

Los desarrolladores de Autokey usan Autokey de Cloud KMS

Después de configurar Autokey de forma correcta, los desarrolladores autorizados de Autokey ahora pueden crear recursos protegidos mediante claves creadas para ellos a pedido. Los detalles del proceso de creación de recursos dependen del recurso que creas, pero el proceso sigue este flujo:

  1. El desarrollador de Autokey comienza a crear un recurso en un servicio de Google Cloud compatible. Durante la creación de recursos, el desarrollador solicita una clave nueva al agente de servicio de Autokey.

  2. El agente de servicio de Autokey recibe la solicitud del desarrollador y completa los siguientes pasos:

    1. Crea un llavero de claves en el proyecto de claves en la ubicación seleccionada, a menos que ese llavero de claves ya exista.
    2. Crea una clave en el llavero de claves con el nivel de detalle adecuado para el tipo de recurso, a menos que esa clave ya exista.
    3. Crea la cuenta de servicio por proyecto y por servicio, a menos que esa cuenta de servicio ya exista.
    4. Otorga los permisos de encriptación y desencriptación de la cuenta de servicio por proyecto y por servicio en la clave.
    5. Proporciona los detalles clave al desarrollador para que pueda terminar de crear el recurso.
  3. Cuando el agente de servicio de Autokey muestra los detalles de la clave de manera correcta, el desarrollador puede terminar de crear el recurso protegido de inmediato.

Autokey de Cloud KMS crea claves que tienen los atributos descritos en la siguiente sección. Este flujo de creación de claves conserva la separación de obligaciones. El administrador de Cloud KMS sigue teniendo visibilidad y control totales de las claves que crea Autokey.

Para comenzar a usar Autokey después de habilitarlo en una carpeta, consulta Crea recursos protegidos con Autokey de Cloud KMS.

Acerca de las claves creadas por Autokey

Las claves que crea Autokey de Cloud KMS tienen los siguientes atributos:

  • Nivel de protección: HSM
  • Algoritmo: AES-256 GCM
  • Período de rotación: un año

    Una vez que Autokey crea una clave, un administrador de Cloud KMS puede editar el período de rotación del valor predeterminado.

  • Separación de obligaciones:

    • A la cuenta de servicio del servicio se le otorgan automáticamente permisos de encriptación y desencriptación en la clave.
    • Los permisos de administrador de Cloud KMS se aplican como de costumbre a las claves que crea Autokey. Los administradores de Cloud KMS pueden ver, actualizar, habilitar o inhabilitar y destruir las claves que crea Autokey. Los administradores de Cloud KMS no tienen permisos de encriptación y desencriptación.
    • Los desarrolladores de Autokey solo pueden solicitar la creación y asignación de claves. No pueden ver ni administrar claves.
  • Nivel de detalle o especificidad de la clave: Las claves que crea Autokey tienen un nivel de detalle que varía según el tipo de recurso. Para obtener detalles específicos de los servicios sobre el nivel de detalle de la clave, consulta Servicios compatibles en esta página.

  • Ubicación: Autokey crea claves en la misma ubicación que el recurso que se protegerá.

    Si necesitas crear recursos protegidos con CMEK en ubicaciones donde Cloud HSM no está disponible, debes crear tus CMEK de forma manual.

  • Estado de la versión de clave: Las claves recién creadas que se solicitan con Autokey se crean como la versión de clave primaria en el estado habilitado.

  • Nombre del llavero de claves: Todas las claves que crea Autokey se crean en un llavero de claves llamado autokey en el proyecto de Autokey en la ubicación seleccionada. Los llaveros de claves en tu proyecto de Autokey se crean cuando un desarrollador de Autokey solicita la primera clave en una ubicación determinada.

  • Los nombres de las claves: La clave que creó Autokey sigue esta convención de nomenclatura:

    PROJECT_NUMBER-SERVICE_SHORT_NAME-RANDOM_HEX
    
  • Al igual que todas las claves de Cloud KMS, las que crea Autokey no se pueden exportar.

  • Al igual que todas las claves de Cloud KMS que se usan en los servicios integrados de CMEK compatibles con el seguimiento de claves, las claves que crea Autokey se rastrean en el panel de Cloud KMS.

Cómo aplicar Autokey

Si deseas aplicar el uso de Autokey dentro de una carpeta, puedes hacerlo combinando los controles de acceso de IAM con las políticas de la organización de CMEK. Esto funciona cuando se quitan los permisos para crear claves de las principales que no son el agente de servicio de Autokey y, luego, se requiere que todos los recursos estén protegidos por CMEK con el proyecto de claves de Autokey. Para obtener instrucciones detalladas sobre cómo aplicar el uso de Autokey, consulta Aplicar de manera forzosa el uso de Autokey.

Servicios compatibles

En la siguiente tabla, se enumeran los servicios que son compatibles con Autokey de Cloud KMS:

Servicio Recursos protegidos Nivel de detalle de la clave
Cloud Storage
  • storage.googleapis.com/Bucket

Los objetos dentro de un bucket de almacenamiento usan la clave predeterminada del bucket. Autokey no crea claves para los recursos storage.object.

Una clave por bucket
Compute Engine
  • compute.googleapis.com/Disk
  • compute.googleapis.com/Image
  • compute.googleapis.com/Instance
  • compute.googleapis.com/MachineImage

Las instantáneas usan la clave del disco del que estás creando una instantánea. Autokey no crea claves para los recursos compute.snapshot.

Una clave por recurso
BigQuery
  • bigquery.googleapis.com/Dataset

Autokey crea claves predeterminadas para los conjuntos de datos. Las tablas, los modelos, las consultas y las tablas temporales dentro de un conjunto de datos usan la clave predeterminada del conjunto de datos.

Autokey no crea claves para los recursos de BigQuery que no sean conjuntos de datos. Para proteger los recursos que no forman parte de un conjunto de datos, debes crear tus propias claves predeterminadas a nivel del proyecto o la organización.

Una clave por recurso
Secret Manager
  • secretmanager.googleapis.com/Secret

Secret Manager solo es compatible con Autokey de Cloud KMS cuando se crean recursos con Terraform o la API de REST.

Una clave por ubicación dentro de un proyecto

Limitaciones

  • No puedes borrar un recurso AutokeyConfig. Puedes inhabilitar Autokey en la carpeta si actualizas AutokeyConfig para configurar enabled=false, pero el proyecto clave configurado permanecerá en AutokeyConfig. Puedes cambiar el proyecto de clave configurado si actualizas AutokeyConfig.
  • Gcloud CLI no está disponible para los recursos de Autokey.
  • Los identificadores de clave no están en Cloud Asset Inventory.

¿Qué sigue?