Apache Airflow 웹 서버 액세스 토큰 생성 - Amazon Managed Workflows for Apache Airflow

Apache Airflow 웹 서버 액세스 토큰 생성

이 페이지의 명령을 사용하여 웹 서버 액세스 토큰을 생성할 수 있습니다. 액세스 토큰은 Amazon MWAA 환경에 대한 액세스 권한을 제공합니다. 예를 들어, 토큰을 얻은 다음 Amazon MWAA API를 사용하여 프로그래밍 방식으로 DAG를 배포할 수 있습니다. 다음 섹션에는 AWS CLI, bash 스크립트, POST API 요청 또는 Python 스크립트를 사용하여 Apache Airflow 웹 로그인 토큰을 생성하는 단계가 포함되어 있습니다. 응답에 반환되는 토큰은 60초 동안 유효합니다.

중요

2025년 8월 19일부로 Amazon MWAA는 IPv6 엔드포인트에 대한 지원을 추가했으며 이제 IPv4 및 IPv6 엔드포인트를 지원합니다. 이 날짜부터 새로 생성된 모든 환경은 Airflow 사용자 인터페이스(UI)에 .on.aws 도메인을 사용합니다. 고객은 새로 생성된 환경의 Airflow UI를 .amazonaws.com 도메인에서 .on.aws 도메인으로 마이그레이션해야 합니다. 웹 서버 및 데이터베이스에 대한 Virtual Private Cloud(VPC) 엔드포인트 서비스는 별도의 변경 없이 현재 .amazonaws.com 도메인을 유지합니다.

사전 조건

다음 섹션에서는 이 페이지의 명령과 스크립트를 사용하는 데 필요한 예비 단계를 설명합니다.

액세스

AWS CLI

AWS Command Line Interface(AWS CLI)는 명령줄 쉘의 명령을 사용하여 AWS 서비스와 상호 작용할 수 있는 오픈 소스 도구입니다. 이 페이지에서 단계를 완료하려면 다음이 필요합니다.

AWS CLI 사용

다음 예제에서는 AWS CLI에서 create-web-login-token 명령을 사용하여 Apache Airflow 웹 로그인 토큰을 생성합니다.

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

bash 스크립트 사용

다음 예제에서는 bash 스크립트를 사용하여 AWS CLI에서 create-web-login-token 명령을 호출하여 Apache Airflow 웹 로그인 토큰을 생성합니다.

  1. 다음 코드 샘플의 내용을 복사하고 로컬에서 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. YOUR_HOST_NAMEYOUR_ENVIRONMENT_NAME에 대해 빨간색으로 표시된 자리 표시자를 대체합니다. 예를 들어, 퍼블릭 네트워크의 호스트 이름은 https://를 제외하고 다음과 같을 수 있습니다.

    123456a0-0101-2020-9e11-1b159eec9000.c2.us-east-1.airflow.amazonaws.com
  3. (선택 사항) macOS 및 Linux 사용자는 스크립트가 실행 가능한지 확인하기 위해 다음 명령을 실행해야 할 수 있습니다.

    chmod +x get-web-token.sh
  4. 다음 스크립트를 실행하여 웹 로그인 토큰을 얻습니다.

    ./get-web-token.sh

    명령 프롬프트에 다음이 표시됩니다.

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

Python 스크립트 사용

다음 예제에서는 Python 스크립트의 boto3 create_web_login_token 메서드를 사용하여 Apache Airflow 웹 로그인 토큰을 생성합니다. 이 스크립트는 Amazon MWAA 외부에서 실행할 수 있습니다. boto3 라이브러리를 설치하기만 하면 됩니다. 가상 환경을 만들어 라이브러리를 설치할 수도 있습니다. 계정에 대한 AWS 인증 보안 인증을 구성했다고 가정합니다.

  1. 다음 코드 샘플의 내용을 복사하고 로컬에서 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. YOUR_ENVIRONMENT_NAME빨간색으로 표시된 자리 표시자로 대체합니다.

  3. 다음 스크립트를 실행하여 웹 로그인 토큰을 얻습니다.

    python3 create-web-login-token.py

다음 단계

  • CreateWebLoginToken에서 웹 로그인 토큰을 생성하는 데 사용되는 Amazon MWAA API 작업을 살펴봅니다.