En este documento, se describen las prácticas recomendadas para configurar Cloud HSM para Google Workspace, lo que te ayudará a proteger tu material de claves contra la destrucción y el borrado accidentales o no autorizados, garantizar la alta disponibilidad y durabilidad de las claves criptográficas críticas, y cumplir con los requisitos reglamentarios y de cumplimiento.
Este documento está dirigido a los arquitectos de la nube, los equipos de seguridad y los administradores de Google Workspace responsables de la seguridad y la resiliencia operativa de las claves de encriptación que se usan en la encriptación del cliente (CSE) para Google Workspace. Se supone que ya conoces el HSM en la nube para Google Workspace y que completaste el proceso de incorporación.
Mitiga la pérdida de material de clave
Los riesgos de seguridad pueden surgir cuando una principal tiene un rol que otorga permiso para completar acciones destructivas, en especial, aquellas que están fuera del alcance habitual del trabajo de la principal. Por ejemplo, un usuario con un rol de propietario del proyecto (roles/owner) demasiado amplio podría destruir el material de la clave que se usa para la CSE de Google Workspace, lo que haría que los datos encriptados fueran permanentemente inaccesibles.
En las siguientes secciones, se describen prácticas que ayudan a mitigar el riesgo de destrucción y eliminación accidentales y maliciosas de claves, ya que se quitan los permisos para destruir o borrar el material de claves de Cloud KMS que usa la encriptación del cliente (CSE) de Google Workspace y se restringe la destrucción de claves.
Aplica políticas de IAM de rechazo a nivel de la carpeta
Las políticas de denegación de IAM te permiten denegar permisos a las principales, incluso si el permiso se otorga de otro modo a través de un rol que tiene la principal. Por ejemplo, incluso si un usuario tiene el rol de propietario del proyecto (roles/owner), una política de denegación de IAM a nivel de la carpeta puede impedir que destruya o borre claves. Si colocas tu proyecto de Cloud HSM dentro de una carpeta y aplicas una política de denegación a nivel de la carpeta, crearás una barrera de protección que evitará la destrucción y eliminación de claves mientras se aplique la política. Las políticas de denegación aplicadas no se pueden cancelar sin un rol como Administrador de denegación (roles/iam.denyAdmin) en la carpeta.
Asegúrate de que los roles de administración de carpetas, como Administrador de carpetas (roles/resourcemanager.folderAdmin) y Administrador de denegación (roles/iam.denyAdmin), solo se otorguen a los principales que no tengan también el rol de Administrador de Cloud KMS (roles/cloudkms.admin) en el proyecto en el que residen tus claves de Cloud HSM. Esta separación de funciones garantiza que ninguna entidad pueda administrar y destruir claves.
Establece una política de denegación según el siguiente ejemplo de configuración:
displayName: Deny KMS key destruction and deletion
rules:
- description: "Denies destroy and delete permissions on Cloud KMS keys for all principals."
denyRule:
deniedPrincipals:
- "principalSet://goog/public:all"
deniedPermissions:
- "cloudkms.googleapis.com/cryptoKeyVersions.destroy"
- "cloudkms.googleapis.com/cryptoKeys.delete"
Para obtener más información sobre las políticas de denegación de IAM, consulta la descripción general de las políticas de denegación de IAM.
Aplica restricciones de políticas de la organización para la destrucción de claves
Además de IAM, puedes aplicar medidas de seguridad a nivel de la organización o de la carpeta con restricciones de políticas de la organización. Estas restricciones actúan como requisitos estrictos que limitan los tipos de recursos que se pueden crear y cómo se pueden configurar. No se pueden omitir las restricciones de las políticas de la organización aplicadas, ni siquiera por las entidades principales que tienen los permisos necesarios para completar la acción prohibida. Las restricciones de políticas de la organización aplicadas no se pueden cancelar sin un rol como el de administrador de políticas de la organización (roles/orgpolicy.policyAdmin) en la organización.
- Duración mínima de destrucción (
constraints/cloudkms.minimumDestroyScheduledDuration): Exige una duración mínima de destrucción programada (por ejemplo, 90 o 120 días) en todas las claves de la organización o el recurso en el que se habilita la política. Esta restricción impide que cualquier usuario acorte el período de recuperación por debajo del valor mínimo configurado. - Inhabilitar antes de destruir (
constraints/cloudkms.disableBeforeDestroy): Requiere que una versión de clave esté en el estadoDISABLEDantes de que se pueda programar su destrucción. Esta restricción agrega un paso obligatorio al flujo de trabajo de destrucción, lo que aumenta la visibilidad de la acción en los registros de auditoría.
Para obtener más información, consulta Controla la destrucción de las versiones de claves.
Maximiza el período de destrucción de claves
Cuando se programa la destrucción de una versión de clave, esta entra en un período de "borrado no definitivo". Mientras una versión de clave se encuentra en el estado programada para su destrucción, puedes restablecer la clave para cancelar su destrucción. Establecer este período configurable en la duración máxima de 120 días ayuda a garantizar que tengas tiempo suficiente para restablecer una versión de clave que se programó para su destrucción de forma accidental o maliciosa. Solo puedes establecer este valor cuando creas la clave.
Cuando restableces una versión de clave que se programó para su destrucción, el estado de la versión de clave se establece en DISABLED. Luego, debes volver a habilitar la versión de la clave para restablecer el acceso a tus datos encriptados de Google Workspace.
El siguiente comando de gcloud CLI crea una clave respaldada por un HSM con una duración de destrucción programada de 120 días:
gcloud kms keys create KEY_NAME \
--location LOCATION \
--keyring KEY_RING \
--purpose encryption \
--protection-level hsm \
--destroy-scheduled-duration 120d
Reemplaza lo siguiente:
KEY_NAME: el nombre de la clave.LOCATION: la ubicación de Cloud KMS del llavero de claves.KEY_RING: el nombre del llavero de claves que incluye la clave
Para aplicar esta duración a todas las claves de tu organización en lugar de establecerla en cada una, puedes definir y aplicar una restricción personalizada de la política de la organización. La siguiente restricción de ejemplo solo permite a los usuarios crear una clave si la duración de la destrucción programada está entre 90 y 120 días:
name: organizations/ORGANIZATION_ID/customConstraints/custom.limitScheduledDestruction
resourceTypes:
- cloudkms.googleapis.com/CryptoKey
methodTypes:
- CREATE
condition: "resource.destroyScheduledDuration >= duration('7776000s') && resource.destroyScheduledDuration <= duration('10368000s')"
actionType: ALLOW
displayName: Require scheduled destruction duration between 90 and 120 days
description: Allows key creation only if the destroyScheduledDuration is between 90 and 120 days.
Reemplaza ORGANIZATION_ID por el ID numérico de tu organización.
Para obtener más información sobre cómo configurar la duración de la destrucción programada, consulta Destruye y restablece versiones de clave. Para obtener más información sobre el uso de restricciones personalizadas de la política de la organización con Cloud KMS, consulta Crea restricciones personalizadas de la política de la organización para Cloud KMS.
Protege tu infraestructura y tu proyecto
Las medidas de protección que se analizaron anteriormente en este documento se enfocan en evitar la destrucción y el borrado de claves. Sin embargo, también necesitas medidas de protección para evitar que se borre el proyecto clave. Usa los siguientes parámetros de referencia para proteger el entorno del proyecto que contiene tus claves de Google Workspace.
Aplica retenciones del proyecto
Una retención de proyecto impide que se borre un proyecto. Incluso un usuario con el rol de propietario del proyecto (roles/owner) no puede cerrar el proyecto mientras haya un gravamen activo. Esta es la forma más eficaz de evitar la eliminación accidental o no autorizada del proyecto en el que residen tus claves de Google Workspace.
Para obtener más información sobre las retenciones de proyectos, consulta Protege proyectos con retenciones.
Comprende el período de recuperación del proyecto
Si un proyecto se borra correctamente (por ejemplo, después de que se quita una vinculación del proyecto [Vista previa]), ingresa en el período de recuperación de 30 días.
Durante este período, un usuario con el rol de propietario del proyecto (roles/owner) o administrador de la organización (roles/resourcemanager.organizationAdmin) puede restablecer el proyecto. Después de 30 días, el proyecto y todas las claves que contiene se borran de forma permanente.
Te recomendamos que mantengas las retenciones del proyecto y que solo uses el período de recuperación como último recurso.
Para obtener más información sobre la recuperación de proyectos, consulta Cómo restablecer un proyecto borrado.
Usa los Controles del servicio de VPC
Los Controles del servicio de VPC te permiten definir un perímetro de seguridad alrededor de tu proyecto de Cloud HSM. Esto ayuda a garantizar que solo se pueda acceder a la API de Cloud KMS desde redes confiables o identidades específicas, lo que mitiga el riesgo de acciones administrativas no autorizadas desde fuera de tu entorno corporativo.
Garantiza la soberanía del material de claves con las claves importadas (BYOK)
Para la mayoría de las organizaciones, recomendamos que permitas que Cloud HSM genere y administre el material de claves por ti.
Sin embargo, si necesitas capacidades de "trae tu propia clave (BYOK)", puedes generar tu material de clave de forma local y importarlo a Cloud HSM. Este enfoque de BYOK te permite satisfacer requisitos como mantener una copia independiente y local de tu material de claves, por ejemplo, para cumplir con los mandatos de soberanía de los datos o recuperarte de una pérdida catastrófica del material de claves. Este enfoque te brinda una copia independiente del material de la clave que puedes volver a importar si se destruye la versión de la clave en Cloud KMS.
Volver a importar a la misma versión
Cloud KMS te permite volver a importar material de clave idéntico en la versión de clave destruida, de modo que el identificador de recurso y el URI sean los mismos que los de la versión de clave importada original. Esto te permite seguir usando la misma configuración de Google Workspace. Cuando vuelves a importar una versión de clave que se usa en una configuración de Google Workspace, se restablece el acceso a los datos en cuanto finaliza la importación de la versión de clave.
Para obtener más información sobre cómo volver a importar una versión de clave destruida, consulta Vuelve a importar una versión de clave destruida.
Protección avanzada con Cloud HSM de usuario único
Para los clientes que requieren el nivel más alto de aislamiento, Cloud HSM de usuario único proporciona particiones de HSM dedicadas. Tu instancia de Cloud HSM de un solo arrendatario se crea y administra con la autenticación de quórum, que requiere la aprobación de una cantidad mínima configurada de miembros del quórum antes de las operaciones críticas, como borrar la instancia de Cloud HSM de un solo arrendatario. Esto ayuda a evitar que una sola cuenta vulnerada destruya tu instancia de HSM de Cloud de un solo arrendatario. Las siguientes prácticas se aplican cuando usas Cloud HSM de usuario único. Para obtener más información, consulta Autenticación basada en quórum.
Infraestructura y claves separadas en todos los proyectos
Crea la instancia de HSM de usuario único de Cloud y tus claves de Google Workspace en proyectos separados. La separación de los proyectos de recursos ayuda a garantizar que un usuario con roles de administrador en el proyecto de claves no tenga autoridad sobre la instancia subyacente de Cloud HSM de usuario único. Esta separación de funciones entre la administración de la infraestructura y la administración de claves reduce el riesgo de acciones no autorizadas a nivel de la infraestructura.
Para obtener más información sobre Cloud HSM de usuario único, consulta la Descripción general de Cloud HSM de usuario único.
Resumen de prácticas recomendadas
En la siguiente tabla, se resumen las prácticas recomendadas de este documento.
| Tema | Tarea |
|---|---|
| Políticas de rechazo de IAM | Aplica políticas de denegación a nivel de la carpeta para bloquear la destrucción y eliminación de claves, incluso para los usuarios con privilegios elevados. |
| Restricciones de las políticas de la organización | Aplicar restricciones para exigir un período de recuperación mínimo y requerir que las llaves se inhabiliten antes de que se puedan destruir |
| Período programado para la destrucción |
|
| Gravámenes del proyecto | Aplica retenciones de proyecto para evitar la eliminación del proyecto que contiene tus claves de encriptación. |
| Perímetro de los Controles del servicio de VPC | Define un perímetro de Controles del servicio de VPC para restringir el acceso a la API de Cloud KMS a identidades y redes de confianza. |
| Reimportación de BYOK | Genera material de claves de forma local y usa la reimportación para recuperar versiones de claves destruidas sin cambiar los nombres de los recursos. |
| Arquitectura entre proyectos | Si usas Cloud HSM de usuario único, separa la instancia y las claves de Cloud HSM de usuario único en diferentes proyectos para aplicar la separación de obligaciones. |
¿Qué sigue?
- Incorporación a Cloud HSM para Google Workspace
- Obtén más información sobre Cloud HSM y sus certificaciones de cumplimiento normativo.
- Revisa las prácticas recomendadas para CMEK y obtén orientación más amplia sobre la administración de claves.
- Obtén más información sobre las políticas de denegación de IAM.
- Obtén más información sobre las restricciones personalizadas de las políticas de la organización.