Soluciona problemas habituales de los Controles del servicio de VPC con los servicios de Google Cloud

En esta página, se proporcionan soluciones a los problemas que podrías tener cuando usas un servicio deGoogle Cloud que se encuentra dentro de un perímetro de los Controles del servicio de VPC.

Problemas de Cloud Build

El uso de recursos de Cloud Build en un perímetro de Controles del servicio de VPC tiene algunas limitaciones conocidas. Para obtener más información, consulta Limitaciones del uso de los Controles del servicio de VPC con Cloud Build.

La cuenta de servicio de Cloud Build no puede acceder a los recursos protegidos

Cloud Build usa la cuenta de servicio de Cloud Build para ejecutar compilaciones en tu nombre. De forma predeterminada, cuando ejecutas una compilación en Cloud Build, se ejecuta en un proyecto de usuario fuera de tu proyecto.

Las VMs de trabajador de Cloud Build que generan resultados de compilación están fuera del perímetro de los Controles del servicio de VPC, incluso si tu proyecto está dentro del perímetro. Por lo tanto, para que tus compilaciones accedan a los recursos dentro del perímetro, debes otorgar acceso a la cuenta de servicio de Cloud Build al perímetro de los Controles del servicio de VPC. Para ello, agrégala al nivel de acceso o a la regla de entrada.

Para obtener más información, consulta Otorga acceso a la cuenta de servicio de Cloud Build al perímetro de los Controles del servicio de VPC.

Problemas de Cloud Storage

Rechazos cuando se segmenta un bucket de Cloud Storage de registro no existente

Si el bucket de registros especificado no existe, los Controles del servicio de VPC deniegan el acceso con el motivo de incumplimiento RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER.

Puedes revisar el registro del rechazo de acceso con el identificador único (vpcServiceControlUniqueIdentifier) de los Controles del servicio de VPC. A continuación, se muestra un registro de ejemplo con el motivo de incumplimiento RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER:

"serviceName": "storage.googleapis.com",
"methodName": "google.storage.buckets.update",
"resourceName": "projects/325183452875",
"metadata": {
  "violationReason": "RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER",
  ...
  "egressViolations": [
    {
      "sourceType": "Resource",
      "targetResource": "projects/0/buckets/this-bucket-does-not-exist",
      "source": "projects/325183452875/buckets/bucket-in-same-project",
      "servicePerimeter": "accessPolicies/875573620132/servicePerimeters/prod_perimeter"
    }]}

Si el campo targetResource del objeto egressViolations muestra un destino con projects/0/buckets, siempre se activará un rechazo, ya que projects/0 no existe y se considera fuera del perímetro de servicio.

Rechazos cuando se accede a los buckets públicos de Cloud Storage que son propiedad de Google

Un perímetro de servicio no puede contener proyectos de organizaciones diferentes. Un perímetro solo puede contener proyectos de su organización superior. Existen ciertas limitaciones cuando deseas acceder a buckets de Cloud Storage desde proyectos dentro de un perímetro de Controles del servicio de VPC que reside en una organización diferente.

Un ejemplo común es cuando deseas acceder a buckets de Cloud Storage que son propiedad de Google. Como tu proyecto y el proyecto propiedad de Google que contiene el bucket de destino no están en el mismo perímetro, los Controles del servicio de VPC rechazan la solicitud con el motivo de incumplimiento RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER.

Para resolver este problema, puedes crear reglas de entrada y salida.

Accede a un bucket de Cloud Storage de acceso público desde un perímetro

Si intentas acceder a un bucket de Cloud Storage de acceso público desde un perímetro de servicio, es posible que los Controles del servicio de VPC bloqueen tus solicitudes y arrojen un incumplimiento de salida.

Para garantizar un acceso correcto y coherente al objeto según sea necesario, debemos aplicar una regla de salida al perímetro de servicio afectado.

Problemas de Security Command Center

En esta sección, se enumeran los problemas que puedes tener cuando usas los recursos de Security Command Center que se encuentran dentro de un perímetro de los Controles del servicio de VPC.

Security Command Center no puede enviar notificaciones a Pub/Sub

Si intentas publicar notificaciones de Security Command Center en un tema de Pub/Sub dentro de un perímetro de Controles del servicio de VPC, se producirá un error con un incumplimiento de RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER.

Te recomendamos que actives Security Command Center a nivel de la organización. Los Controles del servicio de VPC no consideran a una organización superior como parte del perímetro de los proyectos secundarios. Para que esto funcione, debes otorgar acceso al perímetro a Security Command Center.

Como solución alternativa, puedes hacer lo siguiente:

  • Usar un tema de Pub/Sub en un proyecto que no esté en un perímetro de servicio
  • Quitar la API de Pub/Sub del perímetro de servicio hasta que se complete la configuración de las notificaciones

Si deseas obtener más información para habilitar las notificaciones de Security Command Center que se envían a un tema de Pub/Sub, consulta Habilita las notificaciones de hallazgos de Pub/Sub.

Security Command Center no puede analizar los recursos de Compute Engine de un perímetro

Security Command Center analiza los recursos de Compute Engine en tus proyectos con la cuenta de servicio por producto y por proyecto (P4SA) service-{project_number}@gcp-sa-computescanning.iam.gserviceaccount.com. Para que Security Command Center pueda acceder a los recursos dentro del perímetro, se debe agregar P4SA a tu nivel de acceso o regla de entrada. De lo contrario, es posible que veas un error NO_MATCHING_ACCESS_LEVEL.

Security Command Center no puede analizar los recursos de un perímetro de servicio

Security Health Analytics analiza los recursos de tus proyectos con P4SA (cuenta de servicio por producto y por proyecto) service-org-ORGANIZATION_ID@security-center-api.iam.gserviceaccount.com. Para que Security Command Center pueda acceder a los recursos dentro del perímetro, la cuenta de P4SA debe agregarse a tu nivel de acceso o regla de entrada. De lo contrario, verás el error NO_MATCHING_ACCESS_LEVEL.

Problemas de Google Kubernetes Engine

En esta sección, se enumeran los problemas que puedes tener cuando usas recursos de Google Kubernetes Engine que se encuentran dentro de un perímetro de Controles del servicio de VPC.

El escalador automático no funciona en perímetros con servicios accesibles y servicios restringidos habilitados

El elemento autoscaling.googleapis.com no está integrado en los Controles del servicio de VPC, por lo que no se puede agregar a los servicios restringidos ni a los servicios accesibles. No es posible permitir la API de autoscaling.googleapis.com en los servicios accesibles. Por lo tanto, es posible que no funcione el escalador automático de los clústeres que existen en un perímetro con servicios accesibles habilitados.

Se recomienda no usar los servicios accesibles. Cuando uses una IP virtual (VIP) restringida, crea una excepción para que autoscaling.googleapis.com vaya a la VIP privada en un perímetro que contenga un clúster con ajuste de escala automático.

Problemas de BigQuery

En esta sección, se enumeran los problemas que puedes encontrar cuando usas recursos de BigQuery que se encuentran dentro de un perímetro de Controles del servicio de VPC.

Las restricciones del perímetro de los Controles del servicio de VPC no se aplican a la exportación de resultados de consultas de BigQuery

Si intentas restringir la exportación de datos protegidos de BigQuery a Google Drive, Hojas de cálculo de Google o Looker Studio, es posible que observes alguna desviación del comportamiento esperado. Cuando ejecutas una consulta desde la IU de BigQuery, los resultados se almacenan en la memoria local de tu máquina, como la caché del navegador. Esto significa que los resultados ahora están fuera de los Controles del servicio de VPC, por lo que es posible guardarlos en un archivo CSV o en Google Drive.

En este caso, los Controles del servicio de VPC funcionan según lo previsto, ya que el resultado se exporta de la máquina local, que está fuera del perímetro de servicio, pero se elude la restricción general de los datos de BigQuery.

Para solucionar este problema, restringe los permisos de IAM de los usuarios y quita el permiso bigquery.tables.export. Ten en cuenta que, si lo haces, se inhabilitarán todas las opciones de exportación.

Problemas de GKE Enterprise

En esta sección, se enumeran los problemas que puedes tener cuando usas recursos de GKE Enterprise que se encuentran dentro de un perímetro de Controles del servicio de VPC.

Para solucionar errores relacionados con el uso de los Controles del servicio de VPC con Cloud Service Mesh, consulta Soluciona problemas de los Controles del servicio de VPC de Cloud Service Mesh administrado.

La configuración del controlador de configuración de GKE Enterprise genera un incumplimiento de salida

Se espera que el proceso de configuración de Config Controller de GKE Enterprise falle si no hay una configuración de salida que permita llegar a containerregistry.googleapis.com con el método google.containers.registry.read en un proyecto fuera del perímetro.

Para resolver este error, crea la siguiente regla de salida:

From:
  Identities:ANY_IDENTITY
To:
  Projects =
    NNNNNNNNNNNN
  Service =
  Service name: containerregistry.googleapis.com
  Service methods:
    containers.registry.read

El incumplimiento de salida desaparece después de que se agrega la regla al perímetro con incumplimiento.

Problemas de Container Registry

En esta sección, se enumeran los problemas que puedes tener cuando usas recursos de Container Registry que se encuentran dentro de un perímetro de Controles del servicio de VPC.

Las solicitudes a la API de Container Registry se bloquean con los Controles del servicio de VPC, a pesar de estar permitidas en una regla de entrada o salida

Si permitiste el acceso a Container Registry con reglas de entrada que tienen el campo identity_type establecido en ANY_USER_ACCOUNT o ANY_SERVICE_ACCOUNT, los Controles del servicio de VPC bloquearán el acceso.

Para resolver este problema, actualiza el campo identity_type a ANY_IDENTITY en la regla de entrada o salida.

Errores de salida de un agente de servicio mientras se copia una imagen de Docker propiedad de Artifact Registry a un proyecto en un perímetro

Cuando intentas copiar una imagen propiedad de Artifact Registry en tu proyecto que se encuentra dentro de un perímetro de Controles del servicio de VPC, es posible que encuentres errores de salida en los registros del agente de servicio cloud-cicd-artifact-registry-copier@system.gserviceaccount.com. Este error de salida suele ocurrir cuando la política de perímetro está en modo de ejecución de prueba.

Para resolver este problema, crea una regla de salida que permita que el agente de servicio cloud-cicd-artifact-registry-copier@system.gserviceaccount.com acceda al servicio storage.googleapis.com en el proyecto que se menciona en los registros de errores de los Controles del servicio de VPC.

Problemas de Vertex AI

En esta sección, se enumeran los problemas que puedes tener cuando usas recursos de Vertex AI que se encuentran dentro de un perímetro de los Controles del servicio de VPC.

Los Controles del servicio de VPC bloquean las solicitudes a la API de Notebooks administrados por el usuario a pesar de que se permiten en una regla de entrada o salida

Si permitiste el acceso a la API de Notebooks administrados por el usuario con una política de ingreso y configuraste identity_type como ANY_USER_ACCOUNT o ANY_SERVICE_ACCOUNT, los Controles del servicio de VPC bloquearán el acceso a la API.

Para resolver este problema, actualiza el campo identity_type a ANY_IDENTITY en la regla de entrada o salida.

Problemas de Spanner

El incumplimiento NO_MATCHING_ACCESS_LEVEL de la cuenta de servicio por producto y por proyecto (P4SA) service-PROJECT_NUMBER@gcf-admin-robot.iam.gserviceaccount.com impide que se ejecute la copia de seguridad de la base de datos de Spanner.

Para resolver este problema, agrega una regla de entrada con el agente de servicio que se mencionó antes o agrégalo a un nivel de acceso.

Problemas de AlloyDB para PostgreSQL

Si tu clúster de AlloyDB para PostgreSQL está protegido por una CMEK, es posible que encuentres errores de entrada en los registros de los agentes de servicio service-PROJECT_NUMBER@compute-system.iam.gserviceaccount.com y service-PROJECT_NUMBER@gs-project-accounts.iam.gserviceaccount.com.

Para resolver este problema, agrega una regla de entrada con acceso a los agentes de servicio mencionados al servicio cloudkms.googleapis.com en el proyecto que se menciona en los registros de errores de los Controles del servicio de VPC.

¿Qué sigue?