Agrega condiciones de IAM

Las Condiciones de IAM te permiten definir y aplicar el control de acceso condicional basado en atributos para los recursos de Google Cloud, incluidos los recursos de Apigee Integration. Para obtener más información sobre las Condiciones de IAM, consulta Descripción general de las Condiciones de IAM.

En Apigee Integration, puedes aplicar el acceso condicional según los siguientes atributos:

  • Atributos de fecha y hora: Se usa para configurar el acceso temporal (por vencer), programado o de duración limitada a los recursos de Apigee Integration. Por ejemplo, puedes permitir que un usuario acceda a una integración hasta una fecha específica. Para obtener más información, consulta Configura el acceso temporal.
  • Atributos de recursos: Se usa para configurar el acceso condicional según el nombre, el tipo o los atributos del servicio de recursos. Por ejemplo, puedes permitir que un usuario administre integraciones que se crean en una región específica. Para obtener una lista de los valores admitidos. Para obtener más información, consulta Configura el acceso basado en recursos.

Agregar condición de IAM

Para agregar una condición de IAM a una principal existente (usuario, grupo o cuenta de servicio), sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página IAM.

    Ir a IAM

  2. Selecciona tu proyecto, organización o carpeta.
  3. En la lista de principales, busca el principal al que deseas agregar la condición de IAM y haz clic en (Editar principal).

    Aparecerá el panel Editar acceso.

  4. Busca la función a la que deseas agregar la condición de IAM y haz clic en + Agregar condición de IAM.
  5. En el panel Agregar condición, proporciona la siguiente información:
    1. Título: Ingresa un nombre para la condición que deseas agregar a la función.
    2. Descripción: Ingresa una descripción para la condición (opcional).
    3. Puedes agregar una expresión de condición mediante el Creador de condiciones o el Editor de condición.

      El creador de condicionesproporciona una interfaz interactiva en la que puedes seleccionar el tipo de condición y el operador deseados, así como otros detalles aplicables sobre la expresión. El Editor de condición proporciona una interfaz basada en texto en la que puedes ingresar de forma manual una expresión de condición mediante la sintaxis CEL.

      Para obtener instrucciones detalladas sobre cómo usar el Creador de condiciones o el Editor de condición , consulta Configura el acceso basado en recursos.

    4. Haz clic en Guardar para aplicar la condición.
    5. A fin de obtener información sobre los atributos de recursos admitidos para Apigee Integration, consulta Valores de atributos de recursos.

  6. Haz clic en Guardar de nuevo desde el panel Editar acceso para actualizar la principal.

Valores de atributos de recursos

En la siguiente tabla, se enumeran los valores que puede contener el atributo de tipo de recurso para Apigee Integration:

Nombre del recurso Tipo de recurso Referencia
Ubicación SERVICE_ENDPOINT-integrations.googleapis.com/Location Referencia de la API
Integración SERVICE_ENDPOINT-integrations.googleapis.com/Integration Referencia de la API
IntegrationVersion SERVICE_ENDPOINT-integrations.googleapis.com/IntegrationVersion Referencia de la API
Ejecución SERVICE_ENDPOINT-integrations.googleapis.com/Execution Referencia de la API
Suspensión SERVICE_ENDPOINT-integrations.googleapis.com/Suspension Referencia de la API
AuthConfig SERVICE_ENDPOINT-integrations.googleapis.com/AuthConfig Referencia de la API

Ejemplos de uso de condiciones de IAM para la integración de Apigee

Ejemplo 1: Limita el acceso a cualquier recurso de IntegrationVersion en una región

Puedes usar la siguiente expresión de condición en Editor de condiciones para limitar el acceso al recurso IntegrationVersion. El acceso limitado incluye la restricción de las operaciones create, delete, download, get, list, patch, publish, unpublish y upload a las versiones de integración en la región.

!resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION/products/apigee/integrations/INTEGRATION_NAME")

Reemplaza lo siguiente:

Ejemplo 2: Permite el acceso a cualquier recurso de IntegrationVersion en una región.

Puedes usar la siguiente expresión de condición en Editor de condiciones para permitir el acceso al recurso IntegrationVersion:

resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION/products/apigee/integrations/INTEGRATION_NAME") || resource.type == "cloudresourcemanager.googleapis.com/Project")

Reemplaza lo siguiente:

Ejemplo 3: Permite el acceso a un recurso AuthConfig específico.

Puedes usar la siguiente expresión de condición en Editor de condiciones para permitir el acceso a un recurso AuthConfig específico:

(resource.name.extract("authConfigs/{end}" == "AUTH_CONFIG_NAME") || resource.type == "integrations.googleapis.com/Location" || resource.type == "cloudresourcemanager.googleapis.com/Project")

Reemplaza lo siguiente:

Ejemplo 4: Permite el acceso a cualquier recurso de AuthConfig en una región.

Puedes usar la siguiente expresión de condición en el Editor de condición para permitir el acceso a cualquier recurso de AuthConfig:

(resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION/products/apigee") && resource.type == "integrations.googleapis.com/AuthConfig" || resource.type == "integrations.googleapis.com/Location" || resource.type == "cloudresourcemanager.googleapis.com/Project")

Reemplaza lo siguiente: