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.
Inhalt
Voraussetzungen
Im folgenden Abschnitt werden die vorbereitenden Schritte beschrieben, die zur Verwendung der Befehle und Skripts auf dieser Seite erforderlich sind.
Zugriff
-
AWS Kontozugriff in AWS Identity and Access Management (IAM) zur MWAA Amazon-Berechtigungsrichtlinie inZugriffsrichtlinie für die Apache Airflow-Benutzeroberfläche: A mazonMWAAWeb ServerAccess.
-
AWS Kontozugriff in AWS Identity and Access Management (IAM) zur MWAA Amazon-BerechtigungsrichtlinieRichtlinie für vollständigen Zugriff API und Konsolenzugriff: A mazonMWAAFull ApiAccess.
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.
-
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 --nameYOUR_ENVIRONMENT_NAME
--query WebToken --output text) echo $YOUR_URL$WEB_TOKEN -
Ersetzen Sie die Platzhalter in
red
fürYOUR_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
-
(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
-
Führen Sie das folgende Skript aus, um ein Web-Login-Token zu erhalten.
./get-web-token.sh
-
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
-
Kopieren Sie den Inhalt des folgenden Codebeispiels und speichern Sie ihn lokal unter
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) -
Ersetzen Sie den Platzhalter durch
red
fürYOUR_ENVIRONMENT_NAME
. -
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.