As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Tutorial: Restringindo o acesso de um usuário do Amazon MWAA a um subconjunto de DAGs
O Amazon MWAA gerencia o acesso ao seu ambiente mapeando suas entidades principais do IAM para um ou mais perfis padrão
nota
As etapas deste tutorial podem ser concluídas usando o acesso federado, desde que as perfis do IAM possam ser assumidas.
Tópicos
Pré-requisitos
Para concluir os passos deste tutorial, você precisará do seguinte:
-
Um diretor do IAM,
Admin
com AdministratorAccesspermissões, e um usuário do IAM MWAAUser
, como principal para o qual você pode limitar o acesso ao DAG. Para obter mais informações sobre funções de administrador, consulte Função de trabalho de administrador no Guia do usuário do IAMnota
Não anexe políticas de permissão diretamente aos seus usuários do IAM. Recomendamos configurar perfis do IAM que os usuários possam assumir para obter acesso temporário aos seus recursos do Amazon MWAA.
-
AWS Command Line Interface versão 2 instalada.
Etapa 1: forneça acesso ao servidor web Amazon MWAA a sua entidade principal do IAM com o perfil padrão Public
do Apache Airflow.
Para conceder permissão usando o AWS Management Console
-
Faça login na sua AWS conta com uma
Admin
função e abra o console do IAM. -
No painel de navegação à esquerda, selecione Usuários e escolha o usuário do Amazon MWAA IAM.
-
Na página de detalhes do usuário, em Resumo, escolha a guia Permissões e, em seguida, escolha Políticas de permissões para expandir o cartão e escolha Adicionar permissões.
-
Na seção Definir permissões, escolha Anexar políticas existentes diretamente e escolha Criar política.
-
Na página Criar política, escolha JSON e, em seguida, copie e cole a seguinte política de permissões JSON no editor de políticas. Essa política concede acesso do servidor web ao usuário com o perfil padrão
Public
do Apache Airflow.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "airflow:CreateWebLoginToken", "Resource": [ "arn:aws:airflow:
YOUR_REGION
:YOUR_ACCOUNT_ID
:role/YOUR_ENVIRONMENT_NAME
/Public" ] } ] }
Etapa dois: criar um novo perfil personalizado do Apache Airflow
Para criar um novo perfil usando a IU do Apache Airflow
-
Usando sua função de administrador do IAM, abra o console do Amazon MWAA
e inicie a interface de usuário do Apache Airflow do seu ambiente. -
No painel de navegação na parte superior, passe o mouse sobre Segurança para abrir a lista suspensa e escolha Listar funções para visualizar as funções padrão do Apache Airflow.
-
Na lista de funções, selecione Usuário e, na parte superior da página, escolha Ações para abrir o menu suspenso. Escolha Copiar função e confirme Ok
nota
Copie os perfis Ops ou Viewer para conceder mais ou menos acesso, respectivamente.
-
Localize a nova função que você criou na tabela e escolha Editar registro.
-
Na página Switch Role, faça o seguinte:
-
Em Nome, digite um novo nome para a função no campo de texto. Por exemplo,
Restricted
. -
Para obter a lista de Permissões, remova
can read on DAGs
ecan edit on DAGs
, em seguida, adicione permissões de leitura e gravação para o conjunto ao qual DAGs você deseja fornecer acesso. Por exemplo, para um DAG,example_dag.py
, adicione
ecan read on DAG:
example_dag
.can edit on DAG:
example_dag
Escolha Salvar. Agora você deve ter uma nova função que limita o acesso a um subconjunto dos DAGs disponíveis em seu ambiente Amazon MWAA. Agora é possível atribuir esse perfil a qualquer usuário existente do Apache Airflow.
-
Etapa três: atribuir o perfil que você criou ao seu usuário do Amazon MWAA
Para atribuir o novo perfil
-
Usando as credenciais de acesso para
MWAAUser
, execute o comando da CLI a seguir para recuperar o URL do servidor da web do ambiente.$
aws mwaa get-environment --name
YOUR_ENVIRONMENT_NAME
| jq '.Environment.WebserverUrl'Se o teste for bem-sucedido, você verá o seguinte resultado:
"ab1b2345-678a-90a1-a2aa-34a567a8a901.c13.us-west-2.airflow.amazonaws.com"
-
Com
MWAAUser
login no AWS Management Console, abra uma nova janela do navegador e acesse o seguinte URl. SubstituaWebserver-URL
por suas informações.https://
<Webserver-URL>
/homeSe for bem-sucedido, você verá uma página de erro
Forbidden
porque oMWAAUser
ainda não recebeu permissão para acessar a IU do Apache Airflow. -
Com o
Admin
login no AWS Management Console, abra o console do Amazon MWAA novamente e inicie a interface de usuário do Apache Airflow do seu ambiente. -
No painel da interface do usuário, expanda a lista suspensa Segurança e, desta vez, escolha Listar usuários.
-
Na tabela de usuários, encontre o novo usuário do Apache Airflow e escolha Editar registro. O primeiro nome do usuário corresponderá ao seu nome de usuário do IAM no seguinte padrão:
user/
.mwaa-user
-
Na página Editar usuário, na seção Função, adicione a nova função personalizada que você criou e escolha Salvar.
nota
O campo Sobrenome é obrigatório, mas um espaço satisfaz o requisito.
O
Public
diretor do IAM concede aMWAAUser
permissão para acessar a interface do usuário do Apache Airflow, enquanto a nova função fornece as permissões adicionais necessárias para vê-las. DAGs
Importante
Qualquer um dos 5 perfis padrão (como Admin
) não autorizadas pelo IAM que são adicionados usando a IU do Apache Airflow será removido no próximo login do usuário.
Próximas etapas
-
Para saber mais sobre como gerenciar o acesso ao seu ambiente Amazon MWAA e ver exemplos de política do IAM JSON que é possível usar para os usuários do seu ambiente, consulte Como acessar um ambiente do Amazon MWAA
Recursos relacionados
-
Controle de acesso
(documentação do Apache Airflow): saiba mais sobre os perfis padrão do Apache Airflow no site de documentação do Apache Airflow.