Crie um token de acesso ao servidor web Apache Airflow - Amazon Managed Workflows for Apache Airflow

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á.

Crie um token de acesso ao servidor web Apache Airflow

Você pode usar os comandos desta página para criar um token de acesso ao servidor web. Um token de acesso permite que você acesse seu MWAA ambiente Amazon. Por exemplo, você pode obter um token e implantar DAGs programaticamente usando a Amazon. MWAA APIs A seção a seguir inclui as etapas para criar um token de login na web do AWS CLI Apache Airflow usando um script bash, uma POST API solicitação ou um script Python. O token retornado na resposta é válido por 60 segundos.

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

O AWS Command Line Interface (AWS CLI) é uma ferramenta de código aberto que permite interagir com AWS serviços usando comandos em seu shell de linha de comando. Para concluir as etapas nesta página, é necessário o seguinte:

Usando o AWS CLI

O exemplo a seguir usa o create-web-login-tokencomando no AWS CLI para criar um token de login na web 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 create-web-login-tokencomando no AWS CLI para criar um token de login na web 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 red para YOUR_HOST_NAME YOUR_ENVIRONMENT_NAME e. Por exemplo, um nome de host para uma rede pública pode ter a seguinte aparência (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
  5. Você deve ver o seguinte em seu prompt de comando:

    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. Você pode executar esse script fora da AmazonMWAA. 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 AWS autenticação 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 o espaço reservado em red para o 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 MWAA API operação da Amazon usada para criar um token de login na web em CreateWebLoginToken.