Acessar recursos em outro projeto

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Nesta página, descrevemos como acessar recursos localizados em um projeto do Google Cloud diferente do ambiente do Cloud Composer.

Recomendamos acessar os recursos em outros projetos do Google Cloud da seguinte maneira:

  1. Nos DAGs, use as conexões padrão pré-configuradas no ambiente.

    Por exemplo, a conexão google_cloud_default é usada por muitos operadores do Google Cloud e é configurada automaticamente quando você cria um ambiente.

  2. Conceda papéis e permissões extras do IAM à conta de serviço do seu ambiente para que ela possa acessar recursos em um projeto diferente.

Determinar a conta de serviço do ambiente

Para determinar a conta de serviço do seu ambiente:

Console

  1. No console do Google Cloud, acesse a página Ambientes.

    Acessar "Ambientes"

  2. Na lista de ambientes, clique no nome do ambiente. A página Detalhes do ambiente é aberta.

  3. Acesse a guia Configuração do ambiente.

  4. A conta de serviço do ambiente aparece no campo Conta de serviço.

    O valor é um endereço de e-mail, como service-account-name@example-project.iam.gserviceaccount.com.

gcloud

gcloud composer environments describe ENVIRONMENT_NAME \
    --location LOCATION \
    --format="get(config.nodeConfig.serviceAccount)"

O valor é um endereço de e-mail, como service-account-name@example-project.iam.gserviceaccount.com.

Conceder papéis e permissões do IAM para acessar recursos em outro projeto

A conta de serviço do seu ambiente requer permissões para acessar recursos em outro projeto. Esses papéis e permissões podem ser diferentes de acordo com o recurso que você quer acessar.

Acessar um recurso específico

Recomendamos conceder papéis e permissões para recursos específicos, como um único bucket do Cloud Storage localizado em um projeto diferente. Nessa abordagem, você usa o acesso baseado em recursos com vinculações de papéis condicionais.

Para acessar um recurso específico:

  1. Siga o guia Configurar acesso baseado em recursos.
  2. Ao conceder papéis e permissões, especifique a conta de serviço do ambiente como principal.

Acessar um tipo de recurso

Como alternativa, é possível conceder papéis e permissões com base no tipo de recurso, como todos os buckets do Cloud Storage localizados em um projeto diferente.

Para acessar um tipo de recurso:

  1. Siga o guia Gerenciar acesso a outros recursos.
  2. Ao conceder papéis e permissões, especifique a conta de serviço do ambiente como principal.

Depois de conceder as permissões e os papéis necessários, é possível acessar os recursos em um projeto diferente com as mesmas conexões padrão do Airflow usadas para acessar os recursos no projeto em que seu ambiente está localizado.

A seguir