Restringe el uso de servicios

Muchas organizaciones necesitan la capacidad de restringir el uso de servicios en una organización de Google Cloud a una lista definida de servicios incluidos en la lista blanca por administración. Quieren tener la capacidad de establecer políticas para restringir el uso de servicios en cualquier proyecto, organización o carpeta en la jerarquía de recursos y que se hereden.

Descripción general de las funciones

Restrict Service and API Usage te permite crear restricciones jerárquicas para definir los servicios que pueden y no pueden acceder a los contenedores de recursos especificados. Al igual que con todas las demás Políticas de la organización, solo los usuarios con la función roles/orgpolicy.policyAdmin pueden administrar estas políticas y los propietarios de un proyecto de Google Cloud no pueden anularlas.

Esta restricción controla la accesibilidad a los recursos de tiempo de ejecución y bloquea las solicitudes a la API de las API restringidas que intentan acceder a ciertos contenedores de recursos. Si se quitan las restricciones, se restablece el acceso a esos contenedores de recursos.

Ten en cuenta que esta restricción no impide la activación de un servicio o una API, solo restringe el uso. Eso significa que después de que un administrador configure este control para un servicio, un programador puede activarlo, pero no puede usarlo después.

Limitaciones Alfa

Para acceder a esta versión Alfa, comunícate con gcp-governance-solution-leads@google.com e incluye en Cc a tu representante de la Cuenta de Google.

Para el lanzamiento Alfa, esta restricción tiene las siguientes características:

  • Solo es compatible con las API de recursos de Google Cloud que son productos compatibles con los Controles del servicio de VPC.

  • Solo permite la denegación de servicios, no la de permisos.

Usa la restricción Restrict Service and API Usage

De forma predeterminada, los usuarios pueden llamar a cualquier API de recursos de Google Cloud en sus recursos sin restricciones. Las organizaciones que necesitan controlar qué servicios y API pueden acceder a sus recursos pueden configurar la restricción Restrict Service and API Usage a una lista de valores denegados. Después de configurar la restricción, un servicio no puede acceder a un recurso si la política lo rechaza para este par servicio/recurso. Las políticas de la organización se pueden configurar en el nivelde proyecto, carpeta o organización.

Las políticas se heredan en la jerarquía de recursos y se pueden anular en cualquier nivel en el que se pueda establecer una política de este tipo. Consulta la documentación sobre la evaluación de jerarquías para obtener más información sobre la lógica de la evaluación.

Configura la política de la organización

Console

Sigue estos pasos para establecer una política de la organización que incluya una restricción Restrict Service and API Usage:

  1. Ve a la página Políticas de la organización en Google Cloud Console.
    Ir a la página Políticas de la organización

  2. En el selector de proyectos de la parte superior de la pantalla, selecciona el recurso para el que deseas establecer la política.

  3. En la tabla de políticas de la organización, selecciona Restrict Service and API Usage.

  4. Haz clic en Editar.

  5. En Se aplica a, selecciona Personalizar.

  6. En Aplicación de la política, elige cómo aplicar la herencia a esta política.

    1. Si deseas heredar la política de la organización del recurso superior y combinarla con esta, selecciona Combinar con superior.

    2. Si deseas anular las políticas de una organización existente, selecciona Reemplazar.

  7. En Valores de la política, selecciona Personalizar.

  8. En Tipo de política, selecciona Rechazar.

  9. En Valores personalizados, agrega el servicio que deseas bloquear a la lista.

    1. Por ejemplo, para bloquear Filestore, puedes ingresar file.googleapis.com.

    2. Para agregar más servicios, haz clic en Nuevo valor de la política.

    Ingresa valores de servicio en la lista denegada

  10. En el lado derecho de la página, revisa el resumen de la política.

  11. Para aplicar la política, haz clic en Guardar.

gcloud

Las políticas de la organización se pueden configurar mediante la herramienta de línea de comandos de gcloud. Para aplicar una política de la organización que incluya la restricción Restrict Service and API Usage, primero crea un archivo YAML con la política que se actualizará:

$ cat /tmp/policy.yaml
constraint: constraints/gcp.restrictServiceUsage
  list_policy:
  denied_values:
    - file.googleapis.com
    - bigquery.googleapis.com
    - storage.googleapis.com

Para configurar esta política en un recurso, ejecuta el siguiente comando:

gcloud beta resource-manager org-policies set-policy \
    --project='PROJECT_ID' /tmp/policy.yaml

Donde:

  • PROJECT_ID es el ID del proyecto del recurso en el que deseas aplicar esta política de la organización.

Para obtener información sobre el uso de restricciones en las políticas de la organización, consulta la sección sobre cómo usar restricciones.

Mensaje de error

Si configuras una política de la organización para impedir que el servicio A acceda al recurso B, cuando un cliente llama al servicio A para el recurso B, la operación fallará. Se mostrará un mensaje de error que describe el motivo de este error. Además, se generará una entrada de AuditLog para una mayor supervisión, alertas o depuración.

Ejemplo de mensaje de error

Request is disallowed by organization's constraints/gcp.restrictServiceUsage
constraint for projects/policy-violation-test attempting to use service
file.googleapis.com.

Ejemplo de Google Cloud's operations suite y entrada de registros de auditoría de Cloud

Captura de pantalla de una entrada de registro de auditoría de ejemplo

Servicios compatibles

Puedes usar la restricción de uso del servicio para rechazar las API de las API compatibles con VPC, con algunas excepciones:

  1. Algunos servicios de infraestructura de servicio son esenciales para todos los casos prácticos y no se pueden restringir:

    1. cloudresourcemanager.googleapis.com

    2. servicecontrol.googleapis.com

  2. Algunos servicios son esenciales para los casos prácticos. No se recomienda restringir estos servicios, ya que puede causar una pérdida de funcionalidad en tu organización de Google Cloud:

    1. logging.googleapis.com

    2. compute.googleapis.com