Acessar recursos em outro projeto

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Esta página descreve como acessar recursos localizados em um projeto do Google Cloud diferente do seu ambiente do Cloud Composer.

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

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

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

  2. Conceda papéis e permissões extras do IAM à conta de serviço do seu ambiente, para que ele 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 seu ambiente está listada em 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 precisa de permissões para acessar recursos em outro projeto. Essas funções e permissões podem ser diferentes com base no recurso que você quer acessar.

Acessar um recurso específico

Recomendamos conceder funções e permissões para recursos específicos, como um bucket do Cloud Storage localizado em um projeto diferente. Neste abordagem, use o acesso baseado em recursos com vinculações de papéis condicionais.

Para acessar um recurso específico:

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

Acessar um tipo de recurso

Como alternativa, é possível conceder papéis e permissões com base como todos os buckets do Cloud Storage em outro projeto.

Para acessar um tipo de recurso:

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

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

A seguir