Voraussetzungen für Crawler - AWS Glue

Voraussetzungen für Crawler

Der Crawler übernimmt die Berechtigungen der AWS Identity and Access Management (IAM)-Rolle, die Sie angeben, wenn Sie sie definieren. Diese IAM-Rolle muss über Berechtigungen zum Extrahieren von Daten aus Ihrem Datenspeicher und zum Schreiben in den Data Catalog verfügen. Die AWS Glue-Konsole führt nur IAM-Rollen auf, denen eine Vertrauensrichtlinie für den AWS Glue-Prinzipal-Service angefügt ist. Von der Konsole aus können Sie auch eine IAM-Rolle mit einer IAM-Richtlinie für den Zugriff auf Amazon-S3-Datenspeicher erstellen, auf die der Crawler zugreift. Weitere Informationen zum Bereitstellen von Rollen für AWS Glue finden Sie unter Identitätsbasierte Richtlinien für AWS Glue.

Anmerkung

Beim Crawling eines Delta Lake-Datenspeichers benötigen Sie Lese-/Schreibberechtigungen für den Amazon S3-Speicherort.

Für Ihren Crawler können Sie eine Rolle erstellen und die folgenden Richtlinien anfügen:

  • Die von AWS verwaltete Richtlinie AWSGlueServiceRole, die die erforderlichen Berechtigungen für den Data Catalog gewährt

  • Eine Inline-Richtlinie, die Berechtigungen für die Datenquelle erteilt.

  • Eine Inline-Richtlinie, die iam:PassRole Berechtigungen für die Rolle gewährt.

Ein schnellerer Ansatz besteht darin, den Crawler-Assistenten der AWS Glue-Konsole eine Rolle für Sie erstellen zu lassen. Die Rolle, die sie erstellt, ist speziell für den Crawler und enthält die von AWS verwaltete Richtlinie AWSGlueServiceRole sowie die erforderliche Inline-Richtlinie für die angegebene Datenquelle.

Wenn Sie eine vorhandene Rolle für einen Crawler angeben, stellen Sie sicher, dass dieser die AWSGlueServiceRole-Richtlinie oder eine gleichwertige Version dieser Richtlinie (oder eine abgespeckte Version) sowie die erforderlichen Inline-Richtlinien enthält. Für einen Amazon-S3-Datenspeicher wäre die Inline-Richtlinie beispielsweise mindestens die folgende:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::bucket/object*" ] } ] }

Für einen Amazon-DynamoDB-Datenspeicher wäre die Richtlinie beispielsweise mindestens die folgende:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:DescribeTable", "dynamodb:Scan" ], "Resource": [ "arn:aws:dynamodb:us-east-1:111122223333:table/table-name*" ] } ] }

Wenn der Crawler AWS Key Management Service (AWS KMS) verschlüsselte Amazon-S3-Daten liest, muss die IAM-Rolle die Entschlüsselungsberechtigung für den AWS KMS-Schlüssel haben. Weitere Informationen finden Sie unter Schritt 2: Erstellen einer IAM-Rolle für AWS Glue.