Erstellen Sie ein Apache Airflow-Webserver-Zugriffstoken - Amazon Managed Workflows für Apache Airflow

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstellen Sie ein Apache Airflow-Webserver-Zugriffstoken

Sie können die Befehle auf dieser Seite verwenden, um ein Webserver-Zugriffstoken zu erstellen. Ein Zugriffstoken ermöglicht Ihnen den Zugriff auf Ihre MWAA Amazon-Umgebung. Sie können beispielsweise ein Token abrufen und es dann mithilfe von Amazon DAGs programmgesteuert bereitstellen. MWAA APIs Der folgende Abschnitt enthält die Schritte zum Erstellen eines Apache Airflow-Web-Anmeldetokens mithilfe eines Bash-Skripts, einer POST API Anfrage oder eines Python-Skripts. AWS CLI Das in der Antwort zurückgegebene Token ist 60 Sekunden gültig.

Voraussetzungen

Im folgenden Abschnitt werden die vorbereitenden Schritte beschrieben, die zur Verwendung der Befehle und Skripts auf dieser Seite erforderlich sind.

Zugriff

AWS CLI

Das AWS Command Line Interface (AWS CLI) ist ein Open-Source-Tool, mit dem Sie mithilfe von Befehlen in Ihrer Befehlszeilen-Shell mit AWS Diensten interagieren können. Um die Schritte auf dieser Seite abzuschließen, benötigen Sie Folgendes:

Mit dem AWS CLI

Im folgenden Beispiel wird der create-web-login-tokenBefehl in verwendet, AWS CLI um ein Apache Airflow-Web-Anmeldetoken zu erstellen.

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

Verwenden eines Bash-Skripts

Im folgenden Beispiel wird ein Bash-Skript verwendet, um den create-web-login-tokenBefehl AWS CLI zum Erstellen eines Apache Airflow-Web-Anmeldetokens aufzurufen.

  1. Kopieren Sie den Inhalt des folgenden Codebeispiels und speichern Sie ihn lokal unter. 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. Ersetzen Sie die Platzhalter in red für YOUR_HOST_NAME und. YOUR_ENVIRONMENT_NAME Ein Hostname für ein öffentliches Netzwerk könnte beispielsweise so aussehen (ohne https://):

    123456a0-0101-2020-9e11-1b159eec9000.c2.us-east-1.airflow.amazonaws.com
  3. (optional) MacOS- und Linux-Benutzer müssen möglicherweise den folgenden Befehl ausführen, um sicherzustellen, dass das Skript ausführbar ist.

    chmod +x get-web-token.sh
  4. Führen Sie das folgende Skript aus, um ein Web-Login-Token zu erhalten.

    ./get-web-token.sh
  5. In Ihrer Eingabeaufforderung sollte Folgendes angezeigt werden:

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

Verwenden eines Python-Skripts

Im folgenden Beispiel wird die Methode boto3 create_web_login_token in einem Python-Skript verwendet, um ein Apache Airflow-Web-Login-Token zu erstellen. Sie können dieses Skript außerhalb von Amazon ausführenMWAA. Das einzige, was Sie tun müssen, ist die boto3-Bibliothek zu installieren. Möglicherweise möchten Sie eine virtuelle Umgebung erstellen, um die Bibliothek zu installieren. Es wird davon ausgegangen, dass Sie die AWS Authentifizierungsdaten für Ihr Konto konfiguriert haben.

  1. Kopieren Sie den Inhalt des folgenden Codebeispiels und speichern Sie ihn lokal untercreate-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. Ersetzen Sie den Platzhalter durch red für YOUR_ENVIRONMENT_NAME.

  3. Führen Sie das folgende Skript aus, um ein Web-Anmeldetoken zu erhalten.

    python3 create-web-login-token.py

Als nächstes

  • Erkunden Sie den MWAA API Amazon-Vorgang, mit dem ein Web-Login-Token erstellt wurde, unter CreateWebLoginToken.