Nesta página, você encontra as opções de controle de acesso disponíveis na API do Cloud Composer.
Visão geral
A API do Cloud Composer usa o gerenciamento de identidade e acesso (IAM, na sigla em inglês) para controlar o acesso.
Na API Cloud Composer, é possível configurar o controle de acesso no nível do projeto. Por exemplo, conceda acesso a todos os recursos da API do Cloud Composer em um projeto a um grupo de desenvolvedores.
Para uma descrição detalhada do IAM e dos recursos dele, consulte a documentação do IAM. Em particular, consulte Como gerenciar políticas do IAM.
Todos os métodos da API do Cloud Composer exigem que o autor da chamada tenha as permissões necessárias. Para mais informações, veja Permissões e papéis.
Permissões exigidas
Na tabela a seguir, listamos as permissões que o autor da chamada precisa ter para chamar cada método na API Cloud Composer ou para executar tarefas nas ferramentas do Google Cloud que usam a API, como o Console do Google Cloud ou o SDK do Cloud.
Método | Permissão |
---|---|
environments.create |
composer.environments.create iam.serviceAccounts.actAs (na conta de serviço em que o ambiente será executado) |
environments.delete |
composer.environments.delete |
environments.get |
composer.environments.get |
environments.list |
composer.environments.list |
environments.update |
composer.environments.update |
operations.delete |
composer.operations.delete |
operations.get |
composer.operations.get |
operations.list |
composer.operations.list |
Papéis
Papel | Nome | Descrição | Permissões | Menor recurso |
---|---|---|---|---|
roles/ |
Administrador do Composer | Concede controle total dos recursos do Cloud Composer. |
|
Projeto |
roles/ |
Administrador de ambiente e de objetos do Storage | Concede controle total dos recursos do Cloud Composer e dos objetos em todos os buckets do projeto. |
|
Projeto |
roles/ |
Leitor de usuários do ambiente e de objetos do Storage | Concede as permissões necessárias para listar e receber ambientes e operações do Cloud Composer. Concede acesso somente leitura a objetos em todos os buckets do projeto. |
|
Projeto |
roles/ |
Usuário do Composer | Concede as permissões necessárias para listar e receber ambientes e operações do Cloud Composer. |
|
Projeto |
roles/ |
Worker do Composer | Concede as permissões necessárias para executar uma VM de ambiente do Cloud Composer. Destinado a contas de serviço. |
|
Projeto |
Papéis básicos
Role | Nome | Descrição | Permissões | Menor recurso |
---|---|---|---|---|
roles/owner |
Proprietário | Papel básico que permite o controle total dos recursos do Cloud Composer. |
composer.operations.list composer.operations.get composer.operations.delete composer.environments.list composer.environments.get composer.environments.delete composer.environments.update composer.environments.create iam.serviceAccounts.actAs |
Projeto |
roles/editor |
Editor | Papel básico que permite o controle total dos recursos do Cloud Composer. |
composer.operations.list composer.operations.get composer.operations.delete composer.environments.list composer.environments.get composer.environments.delete composer.environments.update composer.environments.create iam.serviceAccounts.actAs |
Projeto |
roles/reader |
Leitor | Papel básico que permite ao usuário listar e acessar recursos do Cloud Composer. |
composer.operations.list composer.operations.get composer.environments.list composer.environments.get |
Projeto |
Permissões para tarefas comuns
Os papéis são conjuntos de permissões. Nesta seção, você vê os papéis ou permissões necessários para realizar tarefas comuns.
Tarefa | Permissões e/ou papéis |
---|---|
Acessar a interface da Web do Airflow protegida por IAP | composer.environments.get |
Executar a CLI do Airflow usando a ferramenta de linha de comando gcloud |
composer.environments.get container.clusters.getCredentials roles/container.developer |
Visualizar a página "Ambientes" no Console do Cloud |
composer.environments.list servicemanagement.projectSettings.get |
Visualizar registros e métricas do conjunto de operações do Google Cloud |
roles/logging.viewer roles/monitoring.viewer |
Criar um ambiente | composer.environments.create iam.serviceAccounts.actAs (na conta de serviço em que o ambiente será executado) |
Atualizar e excluir um ambiente, incluindo a configuração de variáveis e a instalação/atualização de pacotes Python |
environments.delete environments.update |
Fazer upload de arquivos para as pastas "DAGs" e "Plug-ins" e acessar registros do Airflow na pasta "Registros" | storage.objectAdmin atribuído no bucket ou no nível do projeto composer.environments.get para procurar o bucket de destino do DAG |
Controle de acesso por gcloud
Para atribuir papéis predefinidos, execute o
comando
gcloud projects get-iam-policy
para acessar a política atual, atualizar a vinculação de política com o
papel Administrador do Composer (roles/composer.admin
) ou o
papel Usuário do Composer (roles/composer.user
) e, em seguida, executar
o comando
gcloud projects set-iam-policy
. Consulte a página Como conceder, alterar e revogar o acesso a recursos
da documentação do IAM para mais informações sobre como atribuir papéis
usando gcloud
.
Para configurar um papel personalizado com permissões do Cloud Composer, execute o comando gcloud iam roles create
, incluindo a lista de permissões que você quer da tabela de papéis.
Depois, atualize a política do IAM com o papel personalizado
recém-configurado. Consulte a página Como criar um papel personalizado
na documentação do IAM para mais informações.
Controle de acesso por meio do Console do Cloud
Use o Console do Cloud para gerenciar o controle de acesso aos ambientes e projetos.
Para definir os controles de acesso no nível do projeto:
- Abra a página "IAM" no Console do Google Cloud.
- Selecione o projeto e clique em Continuar.
- clique em Adicionar membro;
- Insira o endereço de e-mail de um novo membro que ainda não tem um papel de IAM atribuído.
- Selecione o papel desejado no menu suspenso;
- clique em Adicionar;
- verifique se o membro está listado no papel concedido.