Google Cloud ofrece dos restricciones de políticas de la organización para ayudar a garantizar que las CMEK uso en una organización:
constraints/gcp.restrictNonCmekServices
se usa para requerir CMEK. protección.constraints/gcp.restrictCmekCryptoKeyProjects
se usa para limitar las claves de Cloud KMS que se usan para la protección de CMEK.
Las políticas de la organización de CMEK solo se aplican a los recursos creados recientemente en servicios de Google Cloud compatibles.
Roles obligatorios
Para garantizar que cada usuario tenga
permisos para verificar las políticas de la organización cuando se crean recursos,
solicita a tu administrador que otorgue a cada usuario el
Rol de IAM de Visualizador de políticas de la organización (roles/orgpolicy.policyViewer
) en tu organización.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para verificar las políticas de la organización cuando se crean recursos. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para verificar las políticas de la organización cuando se crean recursos:
-
Para ver todos los detalles de las políticas de la organización, haz lo siguiente:
orgpolicy.policy.get
-
Para verificar la política de la organización cuando creas recursos, haz lo siguiente:
orgpolicy.policies.check
Es posible que el administrador también pueda otorgar a cada usuario estos permisos con roles personalizados otros roles predefinidos.
Cuando las políticas de la organización están activas, el permiso orgpolicy.policies.check
necesario para los usuarios de la consola de Google Cloud que crean recursos con las siguientes características:
protegida por claves CMEK. Los usuarios que no tienen este permiso pueden crear contenido protegido por CMEK
con la consola de Google Cloud, pero puede seleccionar una CMEK que
no está permitida por la restricción restrictCmekCryptoKeyProjects
. Cuando se selecciona una clave que
no cumple con esta restricción, la creación de recursos falla con el tiempo.
Requiere protección con CMEK
Si quieres exigir protección con CMEK para tu organización, configura el
Política de la organización constraints/gcp.restrictNonCmekServices
.
Como restricción de lista, los valores aceptados para esta restricción son
nombres de servicios (por ejemplo, sqladmin.googleapis.com
). Usa esta restricción antes de
proporcionar una lista de nombres de servicios de Google Cloud y establecer la restricción para
Rechazar: Esta configuración bloquea la creación de recursos en estas
servicios si el recurso no está protegido por CMEK. En
otras palabras, las solicitudes para crear un recurso en el servicio no tienen éxito sin
especificando una clave de Cloud KMS. Además, esta restricción bloquea
la eliminación de la protección con CMEK de los recursos en estos servicios. Esta restricción
Solo se pueden aplicar a los servicios compatibles.
Limita el uso de claves de Cloud KMS para CMEK
Para limitar las claves de Cloud KMS que se usan para la protección con CMEK,
configura la restricción constraints/gcp.restrictCmekCryptoKeyProjects
.
Como restricción de lista, los valores aceptados son indicadores de la jerarquía de recursos (para
por ejemplo, projects/PROJECT_ID
, under:folders/FOLDER_ID
y
under:organizations/ORGANIZATION_ID
). Usa esta restricción configurando un
una lista de indicadores de jerarquía de recursos y la configuración de la restricción en Permitir.
Esta configuración restringe los servicios compatibles para que se puedan elegir las CMEK
solo de los proyectos, carpetas y organizaciones
de la lista. Solicitudes para crear
Los recursos protegidos por CMEK en los servicios configurados no funcionan sin un
clave de Cloud KMS de uno de los recursos permitidos. Donde se configure
esta restricción se aplica a todos los servicios compatibles.
Servicios compatibles
Servicio | Valor de la restricción cuando se requiere CMEK |
---|---|
Application Integration | integrations.googleapis.com |
Artifact Registry | artifactregistry.googleapis.com |
BigQuery | bigquery.googleapis.com |
Bigtable | bigtable.googleapis.com |
Cloud Composer | composer.googleapis.com |
Cloud Logging | logging.googleapis.com |
Cloud Run | run.googleapis.com |
Funciones de Cloud Run | cloudfunctions.googleapis.com |
Cloud SQL | sqladmin.googleapis.com |
Cloud Storage | storage.googleapis.com |
Cloud Workstations | workstations.googleapis.com |
Colab Enterprise | aiplatform.googleapis.com |
Compute Engine | compute.googleapis.com |
Dataflow | dataflow.googleapis.com |
Dataproc | dataproc.googleapis.com |
Document AI | documentai.googleapis.com |
Filestore | file.googleapis.com |
Firestore (Vista previa) | firestore.googleapis.com |
Google Kubernetes Engine (Vista previa) | container.googleapis.com |
Memorystore para Redis | redis.googleapis.com |
Pub/Sub | pubsub.googleapis.com |
Secret Manager | secretmanager.googleapis.com |
Secure Source Manager | securesourcemanager.googleapis.com |
Spanner | spanner.googleapis.com |
Vertex AI | aiplatform.googleapis.com |
Instancias de Vertex AI Workbench | notebooks.googleapis.com |
Políticas de la organización de CMEK y el Servicio de transferencia de almacenamiento
Aunque el Servicio de transferencia de almacenamiento no tiene una integración con CMEK, se puede usar
con las políticas de la organización de CMEK. Si usas el Servicio de transferencia de almacenamiento y quieres
asegúrate de que las credenciales de la base de datos almacenadas en Secret Manager estén
protegida por CMEK, debes agregar storagetransfer.googleapis.com
y
secretmanager.googleapis.com
a constraints/gcp.restrictNonCmekServices
“compute.vmExternalIpAccess”. Para obtener más información, consulta la documentación sobre CMEK del Servicio de transferencia de almacenamiento
documentación.
Excepciones de aplicación por tipo de recurso
Las restricciones de la política de la organización de CMEK se aplican de forma forzosa cuando se crea un recurso nuevo o cuando se cambia (si se admite) la clave de Cloud KMS en un recurso existente. Generalmente, se aplican a todos los tipos de recursos de un servicio que admitir CMEK y solo según la configuración del recurso. Algunos destacados excepciones se resumen aquí:
Tipo de recurso | Excepción a la aplicación |
---|---|
bigquery.googleapis.com/Dataset |
Se aplica de forma parcial a la clave predeterminada de Cloud KMS del conjunto de datos (solo gcp.restrictCmekCryptoKeyProjects )
|
bigquery.googleapis.com/Job |
Solo trabajos de consulta: se aplican en la clave de Cloud KMS proporcionada con la consulta o predeterminada desde el proyecto de facturación; consulta también la configuración separada clave predeterminada de Cloud KMS |
bigquerydatatransfer.googleapis.com/TransferConfig |
La configuración de transferencia usa el nombre del servicio del Servicio de transferencia de datos (bigquerydatatransfer.googleapis.com) para las restricciones de la política de la organización de CMEK. |
container.googleapis.com/Cluster |
(Vista previa) Se aplica en la clave de Cloud KMS para el inicio del nodo solo en el disco; No se aplica a los Secrets en la capa de aplicación |
logging.googleapis.com/LogBucket |
Se aplica en buckets de registros creados de forma explícita. consulta la sección Configuración necesarias para garantizar el cumplimiento de los buckets de registros integrados |
storage.googleapis.com/Bucket |
Se aplica en la clave predeterminada de Cloud KMS del bucket |
storage.googleapis.com/Object |
Se aplica independientemente del bucket. consulta también configuración de la clave predeterminada del bucket de Cloud KMS |
Ejemplos de configuración
En los ejemplos de configuración, supongamos que la organización de ejemplo tiene la siguiente jerarquía de recursos:
Exigir CMEK y limitar claves para un proyecto
Supongamos que quieres solicitar protección con CMEK para todos los recursos de Cloud Storage.
en projects/5
y asegúrate de que solo las claves que provienen de projects/4
se puedan
que se usan.
Para solicitar la protección con CMEK para todos los recursos nuevos de Cloud Storage, usa el siguiente configuración de política de la organización:
- Política de la organización:
constraints/gcp.restrictNonCmekServices
- Vinculación en:
projects/5
- Tipo de política: Rechazar
- Valor de la política:
storage.googleapis.com
Para asegurarte de que solo se usen las claves de projects/4
, usa la siguiente configuración:
- Política de la organización:
constraints/gcp.restrictCmekCryptoKeyProjects
- Vinculación en:
projects/5
- Tipo de política: Permitir
- Valor de la política:
projects/4
Requiere CMEK y limita las claves a una carpeta
Como alternativa, supongamos que esperas agregar proyectos de Cloud KMS adicionales en folders/2
en el futuro y deseas requerir CMEK de manera más amplia en folders/3
. Para este caso, necesitarás un poco
parámetros de configuración.
Para requerir protección con CMEK adicional para las instancias de Cloud SQL y Cloud Storage nuevas
recursos en cualquier lugar de folders/3
:
- Política de la organización:
constraints/gcp.restrictNonCmekServices
- Vinculación en:
folders/3
- Tipo de política: Rechazar
- Valores de la política:
sqladmin.googleapis.com
,storage.googleapis.com
Para garantizar que solo se actualicen las claves de los proyectos de Cloud KMS en folders/2
usado:
- Política de la organización:
constraints/gcp.restrictCmekCryptoKeyProjects
- Vinculación en:
folders/3
- Tipo de política: Permitir
- Valor de la política:
under:folders/2
Requiere CMEK para una organización
Para requerir CMEK en toda la organización (en los servicios compatibles),
configura la restricción constraints/gcp.restrictNonCmekServices
con el
siguiente configuración:
- Política de la organización:
constraints/gcp.restrictNonCmekServices
- Vinculación en:
organizations/1
- Tipo de política: Rechazar
- Valores de la política (todos los servicios compatibles)
Limitaciones
Si usas la consola de Google Cloud para crear un recurso, quizás notes que
no puedes usar ninguna opción de encriptación que no sea CMEK cuando
constraints/gcp.restrictNonCmekServices
se configura para un proyecto y
servicio. La restricción de la política de la organización de CMEK solo es visible cuando
a la cuenta de cliente se le otorgó el rol de IAM orgpolicy.policy.get
permiso en el proyecto.
¿Qué sigue?
Consulta Introducción a la política de la organización Servicio para obtener más información sobre los beneficios y casos de uso comunes de las políticas de la organización.
Para obtener más ejemplos sobre cómo crear una política de la organización con restricciones, consulta Cómo usar del usuario.