Acessar ambientes com a federação de identidade de colaboradores

Cloud Composer 1 | Cloud Composer 2

Nesta página, descrevemos como configurar o acesso de usuários ao ambiente do Cloud Composer com a federação de identidade da força de trabalho.

Sobre a federação de identidade da força de trabalho no Cloud Composer

A federação de identidade da força de trabalho permite que você use um provedor de identidade externo (IdP, na sigla em inglês) para autenticar e autorizar uma força de trabalho, um grupo de usuários, como funcionários, parceiros e prestadores de serviços, usando o IAM para que eles possam acessar os serviços do Google Cloud. Para mais informações sobre a federação de identidade da força de trabalho, consulte Federação de identidades da força de trabalho.

Se a federação de identidade da força de trabalho estiver configurada no projeto, será possível acessar o ambiente das seguintes maneiras:

  • Página do Cloud Composer no Console do Google Cloud
  • IU do Airflow
  • Google Cloud CLI, incluindo a execução de comandos da CLI do Airflow
  • API Cloud Composer
  • API REST do Airflow

Antes de começar

  • Todos os novos ambientes do Cloud Composer criados a partir da versão 2.1.11 e do Airflow versão 2.4.3 são compatíveis com a federação de identidade da força de trabalho. Você não precisa configurar seu ambiente de nenhuma maneira específica para oferecer suporte à federação de identidade da força de trabalho.

  • Os ambientes criados antes da versão 2.1.11 e da versão 2.4.3 do Airflow e atualizados para versões posteriores não são compatíveis com a federação de identidade da força de trabalho. É possível verificar se o ambiente é compatível com a federação de identidade da força de trabalho.

  • As limitações do Cloud Storage para federação de identidade da força de trabalho se aplicam ao bucket do ambiente. Especificamente, é preciso ativar o acesso uniforme no nível do bucket no bucket do ambiente para permitir que identidades externas façam upload dos DAGs e arquivos para esse bucket.

  • Os e-mails enviados do Airflow incluem apenas o URL da IU do Airflow para Contas do Google. Como as identidades externas só podem acessar a IU do Airflow por meio do URL da IU do Airflow para identidades externas, o link precisa ser ajustado (alterado para o URL de identidades externas).

Configure o acesso ao seu ambiente com a federação de identidade de colaboradores

Nesta seção, descrevemos as etapas para configurar o acesso de identidades externas ao seu ambiente do Cloud Composer.

Configurar seu provedor de identidade

Configure a federação de identidade da força de trabalho para seu provedor seguindo o guia Configurar federação de identidade da força de trabalho.

Conceder papéis do IAM a identidades externas

No Identity and Access Management, conceda papéis do IAM a conjuntos de identidades externas para que possam acessar e interagir com o ambiente:

Verificar se os novos usuários recebem os papéis corretos do Airflow no controle de acesso da IU do Airflow

O Cloud Composer processa os usuários do Airflow para identidades externas da mesma forma que os usuários da Conta do Google. Em vez de um endereço de e-mail, um identificador principal é usado. Quando uma identidade externa acessa a IU do Airflow pela primeira vez, um usuário do Airflow é registrado automaticamente no sistema de controle de acesso do Airflow com o papel padrão.

Verifique se os novos usuários recebem os papéis corretos do Airflow no controle de acesso da IU do Airflow. Você tem duas opções:

  • Permita que identidades externas recebam o papel padrão depois de acessar a UI do Airflow pela primeira vez. Se necessário, os usuários administradores do Airflow podem alterar esse papel.
  • Faça o pré-registro de identidades externas com um conjunto de papéis necessários, adicionando os registros de usuários do Airflow com os campos de nome de usuário e e-mail definidos como identificadores principais. Dessa forma, as identidades externas recebem o papel atribuído a elas, não o papel padrão.

Verificar se um ambiente é compatível com a federação de identidade de colaboradores

Para verificar se o ambiente é compatível com a federação de identidade da força de trabalho, execute o seguinte comando da Google Cloud CLI. Se a saída mostrar um URI, seu ambiente será compatível com a federação de identidade da força de trabalho.

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION \
  --format="value(config.airflowByoidUri)"

Substitua:

  • ENVIRONMENT_NAME pelo nome do ambiente
  • LOCATION pela região em que o ambiente está localizado;

Exemplo:

gcloud composer environments describe example-environment \
  --location us-central1 \
  --format="value(config.airflowByoidUri)"

Acessar a página do Cloud Composer no Console do Google Cloud

O Console da federação de identidade da força de trabalho do Google Cloud fornece acesso à página do Cloud Composer.

Na página do Composer, no console de federação de identidade da força de trabalho do Google Cloud, é possível acessar a UI para gerenciar ambientes, registros do Cloud Composer, monitoramento e IU do DAG.

Todos os links para a IU do Airflow no console federado apontam para o ponto de acesso da IU do Airflow para identidades externas.

Os ambientes em versões anteriores à 2.1.11 e as versões do Airflow anteriores à 2.4.3 podem ter os links de IU do Airflow marcados como "Não disponíveis". Isso indica que esse ambiente não é compatível com usuários da federação de identidade da força de trabalho na IU do Airflow. A IU do Airflow para esse ambiente só pode ser acessada com Contas do Google.

Acessar a IU do Airflow

Os ambientes do Cloud Composer têm dois URLs para a IU do Airflow: um para contas do Google e outro para identidades externas. Identidades externas precisam acessar a IU do Airflow por meio do URL para identidades externas.

  • O URL de identidades externas é https://<UNIQUE_ID>.composer.byoid.googleusercontent.com.

  • O URL das Contas do Google é https://<UNIQUE_ID>.composer.googleusercontent.com.

Somente usuários autenticados com identidades externas podem acessar o URL de identidades externas. Se um usuário visitar o URL de identidades externas sem estar conectado, ele será redirecionado primeiro para o portal de autenticação, em que especifica o nome do provedor do pool de forças de trabalho. Em seguida, ele é redirecionado para o provedor de identidade para fazer login e, por fim, é redirecionado para a IU do Airflow do ambiente.

Acessar a IU do DAG no Console do Google Cloud

A IU do DAG está disponível para usuários de identidade externa como parte do console federado. É possível controlar o acesso com as políticas do IAM.

O acesso baseado em papéis do Airflow em ambientes com compatibilidade total com a federação de identidade da força de trabalho também é levado em consideração e pode ser usado para limitar quais DAGs são visíveis para usuários individuais ao configurar papéis, conforme descrito em Como usar o controle de acesso da IU do Airflow.

Acessar a Google Cloud CLI

Para acessar seu ambiente por meio da Google Cloud CLI, as identidades externas precisam fazer o seguinte:

  1. Faça login com a Google Cloud CLI usando uma identidade externa.
  2. Execute comandos gcloud composer environments.

Acessar a API Cloud Composer

A API Cloud Composer pode ser usada com identidades externas para gerenciar todos os ambientes do Composer com os métodos de autenticação compatíveis, como tokens OAuth.

API REST do Airflow

A API REST do Airflow está disponível no endpoint para identidades externas com os métodos de autenticação compatíveis, como tokens OAuth.

Para ver o URL do endpoint de identidades externas do ambiente, use o comando gcloud composer environments describe, conforme mostrado na seção Verificar se um ambiente é compatível com a federação de identidade da força de trabalho.

A seguir