Criar um token de acesso ao servidor Web do Apache Airflow - Amazon Managed Workflows for Apache Airflow

Criar um token de acesso ao servidor Web do Apache Airflow

Você pode usar os comandos desta página para criar um token de acesso ao servidor Web. Um token de acesso permite acessar o ambiente do Amazon MWAA. Por exemplo, é possível obter um token e, em seguida, implantar DAGs de forma programática usando as APIs do Amazon MWAA. A seção a seguir inclui as etapas para criar um token da CLI do Apache Airflow usando a AWS CLI, um script bash, uma solicitação POST API ou um script Python. O token retornado na resposta é válido por 60 segundos.

Importante

A partir de 19 de agosto de 2025, o Amazon MWAA adicionou suporte para endpoints IPv6 e agora oferece suporte a endpoints IPv4 e IPv6. A partir dessa data, todos os ambientes recém-criados passaram a usar domínios .on.aws para a interface de usuário (UI) do Airflow. Os clientes devem migrar sua interface de usuário do Airflow do domínio .amazonaws.com para o domínio .on.aws nos ambientes recém-criados. Os serviços de endpoint da nuvem privada virtual (VPC) para servidor web e banco de dados manterão seus domínios .amazonaws.com atuais sem a necessidade de alterações.

Pré-requisitos

A seção a seguir descreve as etapas preliminares necessárias para usar os comandos e scripts desta página.

Acesso

AWS CLI

A AWS Command Line Interface (AWS CLI) é uma ferramenta de código aberto que pode ser usada para interagir com os serviços da AWS por meio de comandos no shell da linha de comando. Para concluir as etapas nesta página, é necessário o seguinte:

Como usar o AWS CLI

O exemplo a seguir usa o comando create-web–login-token na AWS CLI para criar um token da CLI do Apache Airflow.

aws mwaa create-web-login-token --name YOUR_ENVIRONMENT_NAME

Como usar um script bash

O exemplo a seguir usa um script bash para chamar o comando create-cli-token na AWS CLI criar um token da CLI do Apache Airflow.

  1. Copie o conteúdo da amostra de código a seguir e salve localmente como get-web-token.sh.

    #!/bin/bash HOST=YOUR_HOST_NAME YOUR_URL=https://$HOST/aws_mwaa/aws-console-sso?login=true# WEB_TOKEN=$(aws mwaa create-web-login-token --name YOUR_ENVIRONMENT_NAME --query WebToken --output text) echo $YOUR_URL$WEB_TOKEN
  2. Substitua os espaços reservados em vermelho por YOUR_HOST_NAME e YOUR_ENVIRONMENT_NAME. Por exemplo, um nome de host para uma rede pública pode ser algo como (sem o https://):

    123456a0-0101-2020-9e11-1b159eec9000.c2.us-east-1.airflow.amazonaws.com
  3. (opcional) os usuários do macOS e do Linux podem precisar executar o comando a seguir para garantir que o script seja executável.

    chmod +x get-web-token.sh
  4. Execute o script a seguir para obter um token de login na web.

    ./get-web-token.sh

    Seu prompt de comando exibe:

    https://123456a0-0101-2020-9e11-1b159eec9000.c2.us-east-1.airflow.amazonaws.com/aws_mwaa/aws-console-sso?login=true#{your-web-login-token}

Como usar um script Python

O exemplo a seguir usa o método boto3 create_web_login_token em um script Python para criar um token da CLI do Apache Airflow e acionar um DAG. É possível executar esse script fora do Amazon MWAA. Você só precisa instalar a biblioteca boto3. Talvez você queira criar um ambiente virtual para instalar a biblioteca. Ele pressupõe que você tenha configurado as credenciais de autenticação da AWS para sua conta.

  1. Copie o conteúdo da amostra de código a seguir e salve localmente como create-web-login-token.py.

    import boto3 mwaa = boto3.client('mwaa') response = mwaa.create_web_login_token( Name="YOUR_ENVIRONMENT_NAME" ) webServerHostName = response["WebServerHostname"] webToken = response["WebToken"] airflowUIUrl = 'https://{0}/aws_mwaa/aws-console-sso?login=true#{1}'.format(webServerHostName, webToken) print("Here is your Airflow UI URL: ") print(airflowUIUrl)
  2. Substitua os espaços reservados em vermelho por YOUR_ENVIRONMENT_NAME.

  3. Execute o script a seguir para obter um token de login na web.

    python3 create-web-login-token.py

Próximas etapas

  • Explore a operação da API Amazon MWAA usada para criar um token da CLI em CreateCliToken.