Restringe el uso de recursos

En esta página, se proporciona una descripción general de la restricción de la política de la organización Restringir el uso de servicios de recursos, que permite a los administradores empresariales controlar qué servicios de Google Cloud se pueden usar dentro de su jerarquía de recursos de Google Cloud. Esta restricción solo se puede aplicar en servicios con recursos que sean subordinados directos de una organización, una carpeta o un recurso de proyecto. Por ejemplo, Compute Engine y Cloud Storage.

La restricción Restrict Resource Service Usage excluye determinados servicios que son dependencias esenciales para los productos de Google Cloud, como Identity and Access Management (IAM), Cloud Logging y Cloud Monitoring, y no funcionará con ellos. Para obtener la lista de los servicios de recursos de la nube compatibles con esta restricción, consulta Restringe los servicios compatibles con el uso de recursos.

Los administradores pueden usar esta restricción para definir restricciones jerárquicas sobre los servicios de recursos permitidos de Google Cloud dentro de un contenedor de recursos, como una organización, una carpeta o un proyecto. Por ejemplo, permite storage.googleapis.com dentro del proyecto X o rechaza compute.googleapis.com dentro de la carpeta Y.

La restricción Restrict Resource Service Usage se puede usar de dos maneras mutuamente excluyentes:

  • Lista de bloqueo: se permiten los recursos de cualquier servicio que no esté denegado.

  • Lista de entidades permitidas: Se rechazan los recursos de los servicios no permitidos.

La restricción Restrict Resource Service Usage controla el acceso del entorno de ejecución a todos los recursos dentro del alcance. Cuando se actualiza la política de la organización que contiene esta restricción, esta se aplica de inmediato a todos los accesos a todos los recursos dentro del alcance de la política, con coherencia eventual.

Recomendamos que los administradores gestionen con cuidado las actualizaciones de las políticas de la organización que contengan esta restricción. Puedes lanzar este cambio de política de forma más segura si usas etiquetas para aplicar la restricción de forma condicional. Para obtener más información, consulta Configura una política de la organización con etiquetas.

Cuando esta política restringe un servicio, también se restringirán algunos servicios de Google Cloud que tienen una dependencia directa del servicio restringido. Esto solo se aplica a los servicios que administran los mismos recursos del cliente. Por ejemplo, Google Kubernetes Engine (GKE) tiene una dependencia en Compute Engine. Cuando se restringe Compute Engine, GKE también lo está.

Usa la restricción Restringir Resource Service Usage

Las restricciones de las políticas de la organización se pueden establecer a nivel de la organización, la carpeta y el proyecto. Cada política se aplica a todos los recursos dentro de su jerarquía de recursos correspondiente, pero se puede anular en niveles inferiores de la jerarquía de recursos.

Para obtener más información sobre la evaluación de políticas, consulta Comprende la evaluación de jerarquías.

Configura la política de la organización

Si deseas establecer, cambiar o borrar una política de la organización, debes tener la función de Administrador de políticas de la organización.

Console

Para establecer una política de la organización que incluya una restricción Restrict Resource Service Usage, haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página Políticas de la organización.

    Ir a Políticas de la organización

  2. En el selector de proyectos, elige el recurso en el que deseas establecer la política de la organización.

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

  4. Haz clic en Administrar política.

  5. En Se aplica a, selecciona Anular la política del superior.

  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. Haz clic en Agregar una regla.

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

  9. En Tipo de política, selecciona Rechazar para la lista de bloqueo o Permitir para la lista de entidades permitidas.

  10. En Valores personalizados, agrega a la lista el servicio que deseas bloquear o permitir.

    1. Por ejemplo, para bloquear Cloud Storage, puedes ingresar storage.googleapis.com.

    2. Para agregar más servicios, haz clic en Agregar valor.

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

gcloud

Las políticas de la organización se pueden configurar a través de Google Cloud CLI. Para aplicar una política de la organización que incluya la restricción Restrict Resource Service Usage, primero crea un archivo YAML con la política que se actualizará:

name: organizations/ORGANIZATION_ID/policies/gcp.restrictServiceUsage
spec:
   rules:
   - values:
       deniedValues:
       - file.googleapis.com
       - bigquery.googleapis.com
       - storage.googleapis.com

Reemplaza ORGANIZATION_ID por el ID del recurso de tu organización. Para establecer esta política en un recurso, ejecuta el siguiente comando:

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

Reemplaza PROJECT_ID por 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 página sobre cómo usar restricciones.

Restringe los recursos sin etiquetar

Puedes usar etiquetas y políticas de la organización condicionales para restringir cualquier recurso que no use una etiqueta en particular. Si configuras una política de la organización en un recurso que restringe los servicios y hace que sea condicional a la presencia de una etiqueta, no se podrán usar recursos secundarios que desciendan de ese recurso, a menos que se hayan etiquetado. De esta manera, los recursos deben configurarse de acuerdo con tu plan de administración antes de que se puedan usar.

Para restringir los recursos de la organización, las carpetas o los proyectos sin etiquetar, puedes usar el operador lógico ! en una consulta condicional cuando crees la política de la organización.

Por ejemplo, para permitir el uso de sqladmin.googleapis.com solo en proyectos que tienen la etiqueta sqladmin=enabled, puedes crear una política de la organización que rechace sqladmin.googleapis.com en proyectos que no tengan la etiqueta sqladmin=enabled.

  1. Crea una etiqueta que identifique si se aplicó una administración adecuada a los recursos. Por ejemplo, puedes crear una etiqueta con la clave sqlAdmin y el valor enabled para designar que este recurso debe permitir el uso de la API de Cloud SQL Admin. Por ejemplo:

    Crea una clave y un valor de etiqueta

  2. Haz clic en el nombre de la etiqueta recién creada. En los próximos pasos, necesitarás el nombre con espacio de nombres de la clave de etiqueta que aparece en Ruta de acceso de la clave de etiqueta para crear una condición.

  3. Crea una política de la organización Restrict Resource Service Usage en el nivel del recurso de la organización para denegar el acceso a la API de Cloud SQL Admin. Por ejemplo:

    Crea una política de la organización para restringir recursos

  4. Agrega una condición a la política de la organización anterior y especifica que la política se aplica de manera forzosa si la etiqueta de administración no está presente. El creador de condiciones no admite el operador lógico NOT, por lo que esta condición debe compilarse en el editor de condiciones. Por ejemplo:

    Compila una política de la organización condicional

    !resource.matchTag("012345678901/sqlAdmin", "enabled")

Ahora, la etiqueta sqlAdmin=enabled debe adjuntarse a un proyecto o heredarla antes de que los desarrolladores puedan usar la API de Cloud SQL Admin con ese proyecto.

Para obtener más información sobre la creación de políticas de la organización condicionales, consulta Configura una política de la organización con etiquetas.

Crea una política de la organización en modo de ejecución de prueba

Una política de la organización en modo de ejecución de prueba es un tipo de política de la organización en la que los incumplimientos de la política se registran en la auditoría, pero no se rechazan las acciones infractoras. Puedes crear una política de la organización en modo de ejecución de prueba con la restricción Restringir el uso de servicios de recursos para supervisar cómo afectaría a tu organización antes de aplicar la política activa. Para obtener más información, consulta Crea una política de la organización en modo de ejecución de prueba.

Mensaje de error

Si configuras una política de la organización para denegar el servicio A en la jerarquía de recursos B, cuando un cliente intente usar el servicio A dentro de la jerarquía de recursos B, la operación fallará. Se muestra un error que describe el motivo de esta falla. Además, se genera 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/PROJECT_ID attempting to use service
storage.googleapis.com.

Ejemplos de Registros de auditoría de Cloud

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