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 Restringe 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 los 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 y no funcionará con ciertos servicios que son dependencias esenciales para los productos de Google Cloud, como Identity and Access Management (IAM), Cloud Logging y Cloud Monitoring. Para obtener la lista de los servicios de recursos en la nube que son 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 en 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. Esta restricción también determina la disponibilidad de la consola de Google Cloud.

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 se haya denegado.

  • Lista de entidades permitidas: Se rechazan los recursos de cualquier servicio que no está permitido.

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, se aplica de inmediato a todo el acceso a todos los recursos dentro del alcance de la política, con coherencia eventual.

Recomendamos que los administradores administren con cuidado las actualizaciones de las políticas de la organización que contienen esta restricción. Puedes implementar este cambio de política de forma más segura con 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 dependen directamente del servicio restringido. Esto solo se aplica a los servicios que administran los mismos recursos de clientes. Por ejemplo, Google Kubernetes Engine (GKE) tiene una dependencia en Compute Engine. Cuando se restringe Compute Engine, GKE también se restringe.

Disponibilidad de la consola de Google Cloud

Los servicios restringidos en la consola de Google Cloud se comportan de la siguiente manera:

  • No puedes navegar a un producto desde el menú .
  • Los servicios restringidos no aparecen en los resultados de la búsqueda de la consola de Google Cloud.
  • Cuando navegas a la página de la consola de Google Cloud de un servicio restringido, como desde un vínculo o favorito, aparece un mensaje de error.

Usa la restricción Restrict Resource Service Usage

Las restricciones de las políticas de la organización se pueden establecer a nivel de organización, carpeta y proyecto. Cada política se aplica a todos los recursos dentro de su jerarquía de recursos correspondiente, pero puede anularse en los 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, selecciona 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 Restringir el uso de servicios de recursos.

  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 quieres 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 servicios y la haces condicional a la presencia de una etiqueta, no se puede usar ningún recurso secundario descendiente de ese recurso, a menos que se haya 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 sin etiquetar de la organización, la carpeta o el proyecto, 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 tengan 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ó la administración adecuada a los recursos. Por ejemplo, puedes crear una etiqueta con la clave sqlAdmin y el valor enabled para indicar 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. Necesitas el nombre con espacio de nombres de la clave de etiqueta que aparece en Ruta de la clave de etiqueta en los próximos pasos para crear una condición.

  3. Crea una política de la organización Restrict Resource Service Usage a 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 si la etiqueta de administración no está presente. El operador lógico NOT no es compatible con el creador de condiciones, por lo que esta condición debe integrarse en el editor de condiciones. Por ejemplo:

    Compila una política de la organización condicional

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

Ahora, un proyecto debe adjuntar o heredar la etiqueta sqlAdmin=enabled 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 prueba de validación

Una política de la organización en modo de prueba de validación es un tipo de política de la organización en la que los incumplimientos de la política se registran como auditorías, pero no se rechazan las acciones que incumplen. Puedes crear una política de la organización en modo de prueba de validación con la restricción Restringe 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 dentro de 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. 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