Zugriff auf einen Athena-Daten-Connector für externen Hive-Metastore zulassen - Amazon Athena

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.

Zugriff auf einen Athena-Daten-Connector für externen Hive-Metastore zulassen

Die Beispiele für Berechtigungsrichtlinien in diesem Thema veranschaulichen die erforderlichen zulässigen Aktionen und die Ressourcen, für die sie zulässig sind. Untersuchen Sie diese Richtlinien sorgfältig und ändern Sie sie entsprechend Ihren Anforderungen, bevor Sie IAM-Identitäten ähnliche Berechtigungsrichtlinien anfügen.

Beispiel
– Erlauben Sie einem IAM-Prinzipal, Daten mit dem Athena-Daten-Connector für externen Hive-Metastore abzufragen

Die folgende Richtlinie ist den IAM-Prinzipalen zusätzlich zur Richtlinie AWS verwaltete Richtlinie: AmazonAthenaFullAccess angefügt, die vollen Zugriff auf Athena-Aktionen gewährt.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "lambda:GetFunction", "lambda:GetLayerVersion", "lambda:InvokeFunction" ], "Resource": [ "arn:aws:lambda:*:111122223333:function:MyAthenaLambdaFunction", "arn:aws:lambda:*:111122223333:function:AnotherAthenaLambdaFunction", "arn:aws:lambda:*:111122223333:layer:MyAthenaLambdaLayer:*" ] }, { "Sid": "VisualEditor2", "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": "arn:aws:s3:::MyLambdaSpillBucket/MyLambdaSpillLocation" } ] }
Erläuterung der Berechtigungen
Erlaubte Aktionen Erklärung
"s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload"

s3Aktionen ermöglichen das Lesen von und Schreiben in die als angegebene Ressource"arn:aws:s3:::MyLambdaSpillBucket/MyLambdaSpillLocation", wobei der Spill-Bucket MyLambdaSpillLocationidentifiziert wird, der in der Konfiguration der aufgerufenen Lambda-Funktion oder Funktionen angegeben ist. Die Ressourcen-ID arn:aws:lambda: *: my:layer:AWSAcctId: MyAthenaLambdaLayer* ist nur erforderlich, wenn Sie eine Lambda-Schicht verwenden, um benutzerdefinierte Laufzeitabhängigkeiten zu erstellen, um die Größe der Funktionsartefakte bei der Bereitstellung zu reduzieren. Der * in der letzten Position ist ein Platzhalter für die Ebenenversion.

"lambda:GetFunction", "lambda:GetLayerVersion", "lambda:InvokeFunction"
Ermöglicht Abfragen, die im Block angegebenen Funktionen aufzurufen. AWS Lambda Resource Beispiel: where arn:aws:lambda:*:MyAWSAcctId:function:MyAthenaLambdaFunction MyAthenaLambdaFunctiongibt den Namen einer Lambda-Funktion an, die aufgerufen werden soll. Es können mehrere Funktionen angegeben werden, wie im Beispiel gezeigt.
Beispiel
– Erlauben Sie einem IAM-Prinzipal, einen Athena-Daten-Connector für externen Hive-Metastore zu erstellen

Die folgende Richtlinie ist den IAM-Prinzipalen zusätzlich zur Richtlinie AWS verwaltete Richtlinie: AmazonAthenaFullAccess angefügt, die vollen Zugriff auf Athena-Aktionen gewährt.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "lambda:GetFunction", "lambda:ListFunctions", "lambda:GetLayerVersion", "lambda:InvokeFunction", "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:PublishLayerVersion", "lambda:DeleteLayerVersion", "lambda:UpdateFunctionConfiguration", "lambda:PutFunctionConcurrency", "lambda:DeleteFunctionConcurrency" ], "Resource": "arn:aws:lambda:*:111122223333: function: MyAthenaLambdaFunctionsPrefix*" } ] }

Erläuterung der Berechtigungen

Ermöglicht Abfragen, die AWS Lambda Funktionen für die im Block angegebenen AWS Lambda Funktionen aufzurufen. Resource Beispiel: where arn:aws:lambda:*:MyAWSAcctId:function:MyAthenaLambdaFunction MyAthenaLambdaFunctiongibt den Namen einer Lambda-Funktion an, die aufgerufen werden soll. Es können mehrere Funktionen angegeben werden, wie im Beispiel gezeigt.