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.
Verwenden Sie temporäre Anmeldeinformationen, um eine Verbindung zu Amazon Neptune herzustellen
Amazon Neptune unterstützt die IAM-Authentifizierung mit temporären Anmeldeinformationen.
Sie können eine angenommene Rolle zur Authentifizierung mithilfe einer IAM-Authentifizierungsrichtlinie verwenden, etwa eine der Beispielrichtlinien in den vorherigen Abschnitten.
Wenn Sie temporäre Anmeldeinformationen verwenden, müssen Sie AWS_SESSION_TOKEN zusätzlich zu AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY und SERVICE_REGION angeben.
Anmerkung
Die temporären Anmeldeinformationen laufen nach einem angegebenen Intervall ab, , einschließlich des Sitzungs-Tokens.
Sie müssen Ihren Sitzungs-Token aktualisieren, wenn Sie neue Anmeldeinformationen anfragen. Weitere Informationen finden Sie unter Verwenden Sie temporäre Sicherheitsanmeldeinformationen, um Zugriff auf anzufordern AWS Ressourcen.
In den folgenden Abschnitten wird beschrieben, wie Sie den Zugriff zulassen und temporäre Anmeldeinformationen abrufen.
So führen Sie die Authentifizierung mithilfe temporärer Anmeldeinformationen durch
Erstellen Sie eine IAM-Rolle mit Berechtigung für den Zugriff auf einen Neptune-Cluster. Weitere Informationen zum Erstellen dieser Rolle finden Sie unter Verwenden verschiedener Arten von IAM-Richtlinien für die Steuerung des Zugriffs auf Neptune.
-
Fügen Sie eine Vertrauensstellung der Rolle hinzu, die den Zugriff auf die Anmeldeinformationen ermöglicht.
Rufen Sie die temporären Anmeldeinformationen ab, einschließlich
AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEYundAWS_SESSION_TOKEN. Stellen Sie eine Verbindung mit dem Neptune-Cluster her und signieren Sie die Anforderungen mithilfe der temporären Anmeldeinformationen. Für weitere Informationen zu Verbindungen und zum Signieren von Anfragen finden Sie unter Stellen Sie eine Verbindung zu Ihrer Amazon Neptune-Datenbank her mit AWS Identity and Access Management Authentifizierung.
Es gibt verschiedene Methoden zum Abrufen der temporären Anmeldeinformationen, die von der jeweiligen Umgebung abhängig sind.
Themen
Abrufen temporärer Anmeldeinformationen mit dem AWS CLI
Um Anmeldeinformationen mit dem zu erhalten AWS Command Line Interface (AWS CLI), müssen Sie zunächst eine Vertrauensbeziehung hinzufügen, die die Erlaubnis erteilt, die Rolle zu übernehmen AWS Benutzer, der das ausführen wird AWS CLI Befehl.
Fügen Sie der Neptune-IAM-Authentifizierungsrolle die folgende Vertrauensstellung hinzu. Wenn Sie keine Neptune-IAM-Authentifizierungsrolle haben, siehe Verwenden verschiedener Arten von IAM-Richtlinien für die Steuerung des Zugriffs auf Neptune.
Informationen zum Hinzufügen der Vertrauensstellung zur Rolle finden Sie unter Bearbeiten der Vertrauensstellung für eine vorhandene Rolle im AWS Directory Service Administrationshandbuch.
Wenn die Neptune-Richtlinie noch nicht an eine Rolle angefügt ist, erstellen Sie eine neue Rolle. Fügen Sie die Neptune-IAM-Authentifizierungsrichtlinie an und dann die Vertrauensrichtlinie hinzu. Informationen zum Erstellen einer neuen Rolle finden Sie unter Erstellen einer neuen Rolle.
Anmerkung
In den folgenden Abschnitten wird davon ausgegangen, dass Sie AWS CLI installiert.
Um das auszuführen AWS CLI manuell
-
Geben Sie den folgenden Befehl ein, um die Anmeldeinformationen mithilfe der AWS CLI anzufordern. Ersetzen Sie den Rollen-ARN, den Namen der Sitzung und das Profil durch Ihre eigenen Werte.
aws sts assume-role --role-arnarn:aws:iam::123456789012:role/NeptuneIAMAuthRole--role-session-nametest--profiletestprofile -
Das folgende Beispiel zeigt die Ausgabe des Befehls. Der Abschnitt
Credentialsenthält die Werte, die Sie benötigen.Anmerkung
Notieren Sie den
Expiration-Wert, da Sie ihn später zum Anfordern neuer Anmeldeinformationen benötigen.{ "AssumedRoleUser": { "AssumedRoleId": "AROA3XFRBF535PLBIFPI4:s3-access-example", "Arn": "arn:aws:sts::123456789012:assumed-role/xaccounts3access/s3-access-example" }, "Credentials": { "SecretAccessKey": "9drTJvcXLB89EXAMPLELB8923FB892xMFI", "SessionToken": "AQoXdzELDDY//////////wEaoAK1wvxJY12r2IrDFT2IvAzTCn3zHoZ7YNtpiQLF0MqZye/qwjzP2iEXAMPLEbw/m3hsj8VBTkPORGvr9jM5sgP+w9IZWZnU+LWhmg+a5fDi2oTGUYcdg9uexQ4mtCHIHfi4citgqZTgco40Yqr4lIlo4V2b2Dyauk0eYFNebHtYlFVgAUj+7Indz3LU0aTWk1WKIjHmmMCIoTkyYp/k7kUG7moeEYKSitwQIi6Gjn+nyzM+PtoA3685ixzv0R7i5rjQi0YE0lf1oeie3bDiNHncmzosRM6SFiPzSvp6h/32xQuZsjcypmwsPSDtTPYcs0+YN/8BRi2/IcrxSpnWEXAMPLEXSDFTAQAM6Dl9zR0tXoybnlrZIwMLlMi1Kcgo5OytwU=", "Expiration": "2016-03-15T00:05:07Z", "AccessKeyId": "ASIAJEXAMPLEXEG2JICEA" } } -
Stellen Sie die Umgebungsvariablen anhand der zurückgegebenen Anmeldeinformationen ein.
export AWS_ACCESS_KEY_ID=ASIAJEXAMPLEXEG2JICEAexport AWS_SECRET_ACCESS_KEY=9drTJvcXLB89EXAMPLELB8923FB892xMFIexport AWS_SESSION_TOKEN=AQoXdzELDDY//////////wEaoAK1wvxJY12r2IrDFT2IvAzTCn3zHoZ7YNtpiQLF0MqZye/qwjzP2iEXAMPLEbw/m3hsj8VBTkPORGvr9jM5sgP+w9IZWZnU+LWhmg+a5fDi2oTGUYcdg9uexQ4mtCHIHfi4citgqZTgco40Yqr4lIlo4V2b2Dyauk0eYFNebHtYlFVgAUj+7Indz3LU0aTWk1WKIjHmmMCIoTkyYp/k7kUG7moeEYKSitwQIi6Gjn+nyzM+PtoA3685ixzv0R7i5rjQi0YE0lf1oeie3bDiNHncmzosRM6SFiPzSvp6h/32xQuZsjcypmwsPSDtTPYcs0+YN/8BRi2/IcrxSpnWEXAMPLEXSDFTAQAM6Dl9zR0tXoybnlrZIwMLlMi1Kcgo5OytwU=export SERVICE_REGION=us-east-1 or us-east-2 or us-west-1 or us-west-2 or ca-central-1 or ca-west-1 or sa-east-1 or eu-north-1 or eu-south-2 or eu-west-1 or eu-west-2 or eu-west-3 or eu-central-1 or me-south-1 or me-central-1 or il-central-1 or af-south-1 or ap-east-1 or ap-northeast-1 or ap-northeast-2 or ap-northeast-3 or ap-southeast-1 or ap-southeast-2 or ap-southeast-3 or ap-southeast-4 or ap-southeast-5 or ap-south-1 or ap-south-2 or cn-north-1 or cn-northwest-1 or us-gov-east-1 or us-gov-west-1 -
Stellen Sie die Verbindung mit einem der folgenden Verfahren her.
So verwenden Sie ein Skript zum Abrufen der Anmeldeinformationen
-
Führen Sie den folgenden Befehl aus, um den jq-Befehl zu installieren. Das Skript verwendet diesen Befehl, um die Ausgabe von zu analysieren AWS CLI Befehl.
sudo yum -y install jq -
Erstellen Sie in einem Texteditor eine Datei mit der Bezeichnung
credentials.sh, und fügen Sie den folgenden Text hinzu. Ersetzen Sie die Service-Region, den Rollen-ARN, den Namen der Sitzung und das Profil durch Ihre eigenen Werte.#!/bin/bash creds_json=$(aws sts assume-role --role-arnarn:aws:iam::123456789012:role/NeptuneIAMAuthRole--role-session-nametest--profiletestprofile) export AWS_ACCESS_KEY_ID=$(echo "$creds_json" | jq .Credentials.AccessKeyId |tr -d '"') export AWS_SECRET_ACCESS_KEY=$(echo "$creds_json" | jq .Credentials.SecretAccessKey| tr -d '"') export AWS_SESSION_TOKEN=$(echo "$creds_json" | jq .Credentials.SessionToken|tr -d '"') export SERVICE_REGION=us-east-1 or us-east-2 or us-west-1 or us-west-2 or ca-central-1 or ca-west-1 or sa-east-1 or eu-north-1 or eu-south-2 or eu-west-1 or eu-west-2 or eu-west-3 or eu-central-1 or me-south-1 or me-central-1 or il-central-1 or af-south-1 or ap-east-1 or ap-northeast-1 or ap-northeast-2 or ap-northeast-3 or ap-southeast-1 or ap-southeast-2 or ap-southeast-3 or ap-southeast-4 or ap-southeast-5 or ap-south-1 or ap-south-2 or cn-north-1 or cn-northwest-1 or us-gov-east-1 or us-gov-west-1 -
Stellen Sie die Verbindung mit einem der folgenden Verfahren her.
Einrichten AWS Lambda für Neptune IAM-Authentifizierung
AWS Lambda schließt Anmeldeinformationen automatisch bei jeder Ausführung der Lambda-Funktion ein.
Zunächst müssen Sie eine Vertrauensstellung hinzufügen, die dem Lambda-Service die Berechtigung zur Übernahme der Rolle gewährt.
Fügen Sie der Neptune-IAM-Authentifizierungsrolle die folgende Vertrauensstellung hinzu. Wenn Sie keine Neptune-IAM-Authentifizierungsrolle haben, siehe Verwenden verschiedener Arten von IAM-Richtlinien für die Steuerung des Zugriffs auf Neptune.
Informationen zum Hinzufügen der Vertrauensstellung zur Rolle finden Sie unter Bearbeiten der Vertrauensstellung für eine vorhandene Rolle im AWS Directory Service Administrationshandbuch.
Wenn die Neptune-Richtlinie noch nicht an eine Rolle angefügt ist, erstellen Sie eine neue Rolle. Fügen Sie die Neptune-IAM-Authentifizierungsrichtlinie an und dann die Vertrauensrichtlinie hinzu. Informationen zum Erstellen einer neuen Rolle finden Sie unter Erstellen einer neuen Rolle im AWS Directory Service Administrationshandbuch.
Zugriff auf Neptune über Lambda
Melden Sie sich an bei AWS-Managementkonsole und öffne das AWS Lambda Konsole bei https://console.aws.amazon.com/lambda/
. Erstellen Sie eine neue Lambda-Funktion für die Python-Version 3.6.
Weisen Sie die
AWSLambdaVPCAccessExecutionRole-Rolle der Lambda-Funktion zu. Dies ist für den Zugriff auf Neptune-Ressourcen erforderlich, die nur in einer VPC existieren.-
Weisen Sie der Lambda-Funktion die Neptune-Authentifizierungs-IAM-Rolle zu.
Weitere Informationen finden Sie unter AWS -Lambda-Berechtigungen im AWS Lambda -Entwicklerhandbuch.
-
Kopieren Sie das IAM-Authentifizierungs-Python-Beispiel in den Lambda-Funktionscode.
Weitere Informationen zum Beispiel und zum Beispielcode finden Sie unter Verbindung zu Amazon Neptune-Datenbanken mithilfe der IAM-Authentifizierung mit Python herstellen.
Einrichten von Amazon EC2 für die Neptune-IAM-Authentifizierung
Mit Amazon EC2 können Sie Instance-Profile verwenden, um automatisch Anmeldeinformationen bereitzustellen. Weitere Informationen finden Sie unter Verwenden von Instance-Profilen im IAM-Benutzerhandbuch.
Zunächst müssen Sie eine Vertrauensstellung hinzufügen, die dem Amazon-EC2-Service die Berechtigung zur Übernahme der Rolle gewährt.
Fügen Sie der Neptune-IAM-Authentifizierungsrolle die folgende Vertrauensstellung hinzu. Wenn Sie keine Neptune-IAM-Authentifizierungsrolle haben, siehe Verwenden verschiedener Arten von IAM-Richtlinien für die Steuerung des Zugriffs auf Neptune.
Informationen zum Hinzufügen der Vertrauensstellung zur Rolle finden Sie unter Bearbeiten der Vertrauensstellung für eine vorhandene Rolle im AWS Directory Service Administrationshandbuch.
Wenn die Neptune-Richtlinie noch nicht an eine Rolle angefügt ist, erstellen Sie eine neue Rolle. Fügen Sie die Neptune-IAM-Authentifizierungsrichtlinie an und dann die Vertrauensrichtlinie hinzu. Informationen zum Erstellen einer neuen Rolle finden Sie unter Erstellen einer neuen Rolle im AWS Directory Service Administrationshandbuch.
So verwenden Sie ein Skript zum Abrufen der Anmeldeinformationen
-
Führen Sie den folgenden Befehl aus, um den jq-Befehl zu installieren. Das Skript verwendet diesen Befehl zum Analysieren der Ausgabe des curl-Befehl.
sudo yum -y install jq -
Erstellen Sie in einem Texteditor eine Datei mit der Bezeichnung
credentials.sh, und fügen Sie den folgenden Text hinzu. Ersetzen Sie die Service-Region durch Ihren eigenen Wert.TOKEN=$( curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600" ) role_name=$( curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/iam/security-credentials/ ) creds_json=$( curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/iam/security-credentials/${role_name} ) export AWS_ACCESS_KEY_ID=$(echo "$creds_json" | jq .AccessKeyId |tr -d '"') export AWS_SECRET_ACCESS_KEY=$(echo "$creds_json" | jq .SecretAccessKey| tr -d '"') export AWS_SESSION_TOKEN=$(echo "$creds_json" | jq .Token|tr -d '"') export SERVICE_REGION=us-east-1 or us-east-2 or us-west-1 or us-west-2 or ca-central-1 or ca-west-1 or sa-east-1 or eu-north-1 or eu-south-2 or eu-west-1 or eu-west-2 or eu-west-3 or eu-central-1 or me-south-1 or me-central-1 or il-central-1 or af-south-1 or ap-east-1 or ap-northeast-1 or ap-northeast-2 or ap-northeast-3 or ap-southeast-1 or ap-southeast-2 or ap-southeast-3 or ap-southeast-4 or ap-southeast-5 or ap-south-1 or ap-south-2 or cn-north-1 or cn-northwest-1 or us-gov-east-1 or us-gov-west-1 -
Führen Sie das Skript in der
bash-Shell mit demsource-Befehl aus:source credentials.shNoch besser ist es, die Befehle in diesem Skript zur
.bashrc-Datei auf Ihrer EC2-Instance hinzuzufügen, so dass sie automatisch aufgerufen werden, wenn Sie sich anmelden, um temporäre Anmeldeinformationen für die Gremlin-Konsole verfügbar zu machen. -
Stellen Sie die Verbindung mit einem der folgenden Verfahren her.