Cree un token de acceso al servidor web Apache Airflow - Amazon Managed Workflows para Apache Airflow

Cree un token de acceso al servidor web Apache Airflow

Puede usar los comandos de esta página para crear un token de acceso al servidor web. Un token de acceso le permite acceder a su entorno de Amazon MWAA. Por ejemplo, puede obtener un token y, a continuación, implementar los DAG mediante programación con las API de Amazon MWAA. La siguiente incluye sección los pasos para crear un token de inicio de sesión web de Apache Airflow mediante la AWS CLI, un script de bash, una solicitud de API POST o un script Python. El token devuelto en la respuesta es válido durante 60 segundos.

importante

Desde el 19 de agosto de 2025, Amazon MWAA agregó soporte para puntos de conexión IPv6 y ahora es compatible con puntos de conexión IPv4 e IPv6. A partir de esa fecha, todos los entornos recién creados usarán dominios .on.aws para la interfaz de usuario (UI) de Airflow. Los clientes deben migrar su UI de Airflow de dominios .amazonaws.com a .on.aws para estos entornos recién creados. Los servicios de punto de conexión de Virtual Private Cloud (VPC) para servidores web y bases de datos mantendrán sus dominios .amazonaws.com actuales sin necesidad de hacer cambios.

Requisitos previos

En la siguiente sección se describen los pasos preliminares necesarios para utilizar los comandos y scripts de esta página.

Acceso

AWS CLI

La AWS Command Line Interface (AWS CLI) es una herramienta de código abierto que le permite interactuar con los servicios de AWS mediante el uso de comandos en el shell de la línea de comandos. Para completar los pasos de esta página, necesita lo siguiente:

Uso de AWS CLI

El siguiente ejemplo usa el comando create-web-login-token en la AWS CLI para crear un token de inicio de sesión web de Apache Airflow.

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

Uso de un script de bash

El siguiente ejemplo usa el script bash para llamar al comando create-web-login-token en la AWS CLI para crear un token de inicio de sesión web de Apache Airflow.

  1. Copie el contenido del código de ejemplo siguiente y guárdelo 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. Sustituya los marcadores de posición en rojo por YOUR_HOST_NAME y YOUR_ENVIRONMENT_NAME. Por ejemplo, el nombre de host de una red pública tiene este aspecto (sin el https://):

    123456a0-0101-2020-9e11-1b159eec9000.c2.us-east-1.airflow.amazonaws.com
  3. (Opcional) Es posible que los usuarios de macOS y Linux tengan que ejecutar el siguiente comando para verificar que el script sea ejecutable.

    chmod +x get-web-token.sh
  4. Ejecute el siguiente script para obtener un token de inicio de sesión web.

    ./get-web-token.sh

    La línea de comandos muestra lo siguiente:

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

Uso de un script de Python

El siguiente ejemplo utiliza el método boto3 create_web_login_token en un script de Python para crear un token de inicio de sesión web de Apache Airflow. Puede ejecutar este script fuera de Amazon MWAA. Para ello, solo tiene que instalar la biblioteca boto3. Es posible que deba crear un entorno virtual para instalar la biblioteca. Se supone que ha configurado las credenciales de autenticación de AWS para su cuenta.

  1. Copie el contenido del código de ejemplo siguiente y guárdelo 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. Sustituya el marcador de posición en rojo por YOUR_ENVIRONMENT_NAME.

  3. Ejecute el siguiente script para obtener un token de inicio de sesión web.

    python3 create-web-login-token.py

Siguientes pasos

  • Explore la operación de la API de Amazon MWAA utilizada para crear un token de inicio de sesión web en CreateWebLoginToken.