Adicionar condições do IAM

As condições do IAM permitem definir e aplicar o controle de acesso condicional baseado em atributos nos recursos do Google Cloud, incluindo os de integração da Apigee. Para mais informações sobre as condições do IAM, consulte as Informações gerais sobre as condições do IAM.

Na integração da Apigee, é possível aplicar o acesso condicional com base nos seguintes atributos:

  • Atributos de data/hora: use para definir o acesso temporário (expirado), programado ou de duração limitada aos recursos de integração da Apigee. Por exemplo, você pode permitir que um usuário acesse uma integração até uma data especificada. Para mais informações, consulte Como configurar o acesso temporário.
  • Atributos de recurso: use para configurar o acesso condicional com base em nome, tipo de recurso ou atributos de serviço de recurso. Por exemplo, é possível permitir que um usuário gerencie as integrações criadas em uma região específica. Para acessar uma lista de valores compatíveis. Para mais informações, consulte Como configurar o acesso baseado em recursos.

Adicionar condição do IAM

Para adicionar uma condição do IAM a um principal atual (usuário, grupo ou conta de serviço), siga estas etapas:

  1. No console do Google Cloud, abra a página IAM.

    Acessar o IAM

  2. Selecione o projeto, a pasta ou a organização.
  3. Na lista de principais, encontre a principal a que você quer adicionar a condição do IAM e clique em (Editar principal).

    O painel Acesso para editar é exibido.

  4. Encontre o papel a que você quer adicionar a condição do IAM e clique em + Adicionar condição do IAM.
  5. No painel Adicionar condição, forneça estas informações:
    1. Título: insira um nome para a condição que você está adicionando ao papel.
    2. Descrição (opcional): insira uma descrição para a condição.
    3. É possível adicionar uma condição usando o Criador de condições ou o Editor da condição.

      O Criador de condições fornece uma interface interativa para selecionar o tipo de condição desejado, o operador e outros detalhes aplicáveis sobre a expressão. O Editor de condições oferece uma interface baseada em texto para inserir manualmente uma expressão de condição usando a sintaxe CEL.

      Para instruções detalhadas sobre como usar o Criador de condições ou o Editor de condições, consulte Configurar o acesso com base em recursos.

    4. Clique em Salvar para aplicar a condição.
    5. Para mais informações sobre os atributos de recursos compatíveis com a integração da Apigee, consulte Valores de atributos de recursos.

  6. Clique em Salvar novamente no painel Editar acesso para atualizar o principal.

Valores de atributos do recurso

A tabela a seguir lista os valores que o atributo de tipo de recurso pode conter para a integração com a Apigee:

Nome do recurso Tipo de recurso Referência
Local SERVICE_ENDPOINT-integrations.googleapis.com/Location Referência da API
Integração SERVICE_ENDPOINT-integrations.googleapis.com/Integration Referência da API
IntegrationVersion SERVICE_ENDPOINT-integrations.googleapis.com/IntegrationVersion Referência da API
Execução SERVICE_ENDPOINT-integrations.googleapis.com/Execution Referência da API
Suspensão SERVICE_ENDPOINT-integrations.googleapis.com/Suspension Referência da API
AuthConfig SERVICE_ENDPOINT-integrations.googleapis.com/AuthConfig Referência da API

Exemplos de como usar condições do IAM para integração da Apigee

Exemplo 1: limitar o acesso a qualquer recurso IntegrationVersion em uma região

Use a expressão de condição a seguir no Editor de condições para limitar o acesso ao recurso IntegrationVersion. Limitar o acesso inclui restringir as operações create, delete, download, get, list, patch, publish, unpublish e upload às versões de integração na região.

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

Substitua:

Exemplo 2: permitir o acesso a qualquer recurso IntegrationVersion em uma região

Use a seguinte expressão de condição no Editor de condições para permitir acesso ao recurso IntegrationVersion:

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

Substitua:

Exemplo 3: permitir acesso a um recurso AuthConfig específico

Use a seguinte expressão de condição no Editor de condições para permitir acesso a um recurso AuthConfig específico:

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

Substitua:

Exemplo 4: permitir o acesso a qualquer recurso AuthConfig em uma região

Use a seguinte expressão de condição no Editor de condições para permitir acesso a qualquer recurso 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")

Substitua: