IAM-Berechtigungen für AWS Glue Data Quality konfigurieren - AWS Glue

IAM-Berechtigungen für AWS Glue Data Quality konfigurieren

Dieses Thema enthält Informationen zum Verständnis der Aktionen und Ressourcen, die Sie als IAM-Administrator in einer AWS Identity and Access Management (IAM-)Richtlinie für AWS Glue Data Quality verwenden können. Sie enthält Beispiele für IAM-Richtlinien mit den Mindestberechtigungen, die Sie für die Verwendung von AWS Glue Data Quality mit dem AWS Glue Data Catalog benötigen.

Weitere Informationen über Sicherheit in AWS Glue finden Sie unter Sicherheit in AWS Glue.

IAM-Berechtigungen für AWS Glue Data Quality

Die folgende Tabelle listet die Berechtigungen auf, die ein Benutzer benötigt, um bestimmte Vorgänge für AWS Glue Data Quality auszuführen. Um eine differenzierte Autorisierung für AWS Glue Data Quality festzulegen, können Sie diese Aktionen im Action-Element einer IAM-Richtlinienanweisung angeben.

Aktionen zu AWS Glue Data Quality
Aktion Beschreibung Ressourcentypen
glue:CreateDataQualityRuleset Gewährt die Berechtigung zum Erstellen eines Datenqualitätsregelsatzes. ::dataQualityRuleset/<name>
glue:DeleteDataQualityRuleset Gewährt die Berechtigung zum Löschen eines Datenqualitätsregelsatzes. ::dataQualityRuleset/<name>
glue:GetDataQualityRuleset Gewährt die Berechtigung zum Abrufen eines Datenqualitätsregelsatzes. ::dataQualityRuleset/<name>
glue:ListDataQualityRulesets Gewährt die Berechtigung zum Abrufen aller Datenqualitätsregelsätze. ::dataQualityRuleset/*
glue:UpdateDataQualityRuleset Gewährt die Berechtigung zum Aktualisieren eines Datenqualitätsregelsatzes. ::dataQualityRuleset/<name>
glue:GetDataQualityResult Gewährt die Berechtigung zum Abrufen eines Ausführungsergebnisses einer Datenqualitätsaufgabe. Diese IAM-Aktion bietet auch Berechtigungen für die folgenden APIs:
  • BatchGetDataQualityQualityResult

  • ListDataQualityStatistics

  • ListDataQualityStatisticAnnotations

::dataQualityRuleset/<name>
glue:ListDataQualityResults Gewährt die Berechtigung zum Abrufen aller Ausführungsergebnisse einer Datenqualitätsaufgabe. ::dataQualityRuleset/*
glue:CancelDataQualityRuleRecommendationRun Gewährt die Berechtigung, die Ausführung einer gerade ausgeführten Aufgabe zur Datenqualitätsempfehlung anzuhalten. ::dataQualityRuleset/*
glue:GetDataQualityRuleRecommendationRun Gewährt die Berechtigung zum Abrufen einer Ausführung einer Aufgabe zur Datenqualitätsempfehlung. ::dataQualityRuleset/*
glue:ListDataQualityRuleRecommendationRuns Gewährt die Berechtigung zum Abrufen aller Ausführungen der Aufgaben zur Datenqualitätsempfehlung. ::dataQualityRuleset/*
glue:StartDataQualityRuleRecommendationRun Gewährt die Berechtigung zum Starten einer Aufgabe zur Datenqualitätsempfehlung. ::dataQualityRuleset/*
glue:CancelDataQualityRulesetEvaluationRun Gewährt die Berechtigung zum Anhalten einer gerade ausgeführten Datenqualitätsaufgabe. ::dataQualityRuleset/*
glue:GetDataQualityRulesetEvaluationRun Gewährt die Berechtigung zum Abrufen einer ausgeführten Datenqualitätsaufgabe. ::dataQualityRuleset/*
glue:ListDataQualityRulesetEvaluationRuns Gewährt die Berechtigung zum Abrufen aller Ausführungen von Datenqualitätsaufgaben. ::dataQualityRuleset/*
glue:StartDataQualityRulesetEvaluationRun Gewährt die Berechtigung zum Starten der Ausführung einer Datenqualitätsaufgabe. ::dataQualityRuleset/<name>
glue:PublishDataQuality Gewährt die Berechtigung zum Veröffentlichen von Ergebnissen zur Datenqualität. ::dataQualityRuleset/<name>
glue:GetDataQualityModel Gewährt die Berechtigung zum Abrufen eines Datenqualitätsmodells. ::dataQualityRuleset/<name>, ::job/<name>
glue:GetDataQualityModelResult Gewährt die Berechtigung zum Abrufen von Ergebnissen eines Datenqualitätsmodells. ::dataQualityRuleset/<name>, ::job/<name>
glue:PutDataQualityStatisticAnnotation Gewährt die Berechtigung, der Statistik Anmerkungen hinzuzufügen. Diese IAM-Aktion bietet auch Berechtigungen für die folgenden APIs:
  • BatchPutDataQualityStatisticAnnotation

::dataQualityRuleset/<name>, ::job/<name>
glue:PutDataQualityProfileAnnotation Gewährt die Berechtigung, Anmerkungen zu allen Statistiken in einem Profil hinzuzufügen. ::dataQualityRuleset/<name>, ::job/<name>

Für die Planung von Auswertungsausführungen erforderliche IAM-Einrichtung

IAM-Berechtigungen

Um geplante Data-Quality-Auswertungsausführungen auszuführen, müssen Sie die IAM:PassRole-Aktion zur Berechtigungsrichtlinie hinzufügen.

Für AWS EventBridge Scheduler erforderliche Berechtigungen
Aktion Beschreibung Ressourcentypen
iam:PassRole Gewährt IAM die Berechtigung, dem Benutzer die Übergabe der genehmigten Rollen zu ermöglichen. ARN der Rolle, die zum Aufrufen von StartDataQualityRulesetEvaluationRun verwendet wird

Ohne diese Berechtigungen tritt der folgende Fehler auf:

"errorCode": "AccessDenied" "errorMessage": "User: arn:aws:sts::account_id:assumed-role/AWSGlueServiceRole is not authorized to perform: iam:PassRole on resource: arn:aws:iam::account_id:role/service-role/AWSGlueServiceRole because no identity-based policy allows the iam:PassRole action"

Vertrauenswürdige IAM-Entitäten

Die Services AWS Glue und AWS EventBridge Scheduler müssen in den vertrauenswürdigen Entitäten aufgeführt sein, um eine geplante StartDataQualityEvaluationRun erstellen und ausführen zu können.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "glue.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

IAM-Beispielrichtlinien

Eine IAM-Rolle für AWS Glue Data Quality benötigt die folgenden Arten von Berechtigungen:

  • Berechtigungen für Vorgänge von AWS Glue Data Quality, sodass Sie empfohlene Datenqualitätsregeln abrufen und eine Datenqualitätsaufgabe für eine Tabelle im AWS Glue Data Catalog ausführen können. Die IAM-Beispielrichtlinien in diesem Abschnitt enthalten die Mindestberechtigungen, die für Vorgänge von AWS Glue Data Quality erforderlich sind.

  • Berechtigungen, die Zugriff auf Ihre Datenkatalogtabelle und die zugrunde liegenden Daten gewähren. Diese Berechtigungen variieren je nach Anwendungsfall. Beispielsweise sollten die Berechtigungen für Daten, die Sie in Amazon S3 katalogisieren, den Zugriff auf Amazon S3 beinhalten.

    Anmerkung

    Sie müssen zusätzlich zu den in diesem Abschnitt beschriebenen Berechtigungen Amazon-S3-Berechtigungen konfigurieren.

Mindestberechtigungen zum Abrufen empfohlener Datenqualitätsregeln

Diese Beispielrichtlinie enthält die Berechtigungen, die Sie benötigen, um empfohlene Datenqualitätsregeln zu generieren.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowGlueRuleRecommendationRunActions", "Effect": "Allow", "Action": [ "glue:GetDataQualityRuleRecommendationRun", "glue:PublishDataQuality", "glue:CreateDataQualityRuleset" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*" }, { "Sid": "AllowCatalogPermissions", "Effect": "Allow", "Action": [ "glue:GetPartitions", "glue:GetTable" ], "Resource": [ "*" ] }, { "Sid": "AllowS3GetObjectToRunRuleRecommendationTask", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::aws-glue-*" }, { "Sid": "AllowPublishingCloudwatchLogs", "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:CreateLogGroup", "logs:PutLogEvents" ], "Resource": "*" } ] }

Gewährt die Berechtigung zum Starten der Ausführung einer Datenqualitätsaufgabe

Diese Beispielrichtlinie enthält die Berechtigungen, die Sie benötigen, um eine Aufgabe zur Bewertung der Datenqualität auszuführen.

Die folgenden Richtlinienerklärungen sind optional, je nach Anwendungsfall:

  • AllowCloudWatchPutMetricDataToPublishTaskMetrics - Erforderlich, wenn Sie Datenqualitäts-Ausführungsmetriken auf Amazon CloudWatch veröffentlichen wollen.

  • AllowS3PutObjectToWriteTaskResults - Erforderlich, wenn Sie die Ergebnisse von Datenqualitätsläufen in Amazon S3 schreiben möchten.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowGlueGetDataQualityRuleset", "Effect": "Allow", "Action": [ "glue:GetDataQualityRuleset" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/YOUR-RULESET-NAME" }, { "Sid": "AllowGlueRulesetEvaluationRunActions", "Effect": "Allow", "Action": [ "glue:GetDataQualityRulesetEvaluationRun", "glue:PublishDataQuality" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*" }, { "Sid": "AllowCatalogPermissions", "Effect": "Allow", "Action": [ "glue:GetPartitions", "glue:GetTable" ], "Resource": [ "*" ] }, { "Sid": "AllowS3GetObjectForRulesetEvaluationRun", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::aws-glue-*" }, { "Sid": "AllowCloudWatchPutMetricDataToPublishTaskMetrics", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*", "Condition": { "StringEquals": { "cloudwatch:namespace": "Glue Data Quality" } } }, { "Sid": "AllowS3PutObjectToWriteTaskResults", "Effect": "Allow", "Action": [ "s3:PutObject*" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }

Mindestberechtigungen zum Ausführen eines ETL-Auftrags zur Datenqualität

Diese Beispielrichtlinie enthält die Berechtigungen, die Sie benötigen, um einen ETL-Auftrag zur Datenqualität auszuführen.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowGluePublishDataQualityResult", "Effect": "Allow", "Action": [ "glue:PublishDataQuality" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*" }, { "Sid": "AllowGlueGetDataQualityResult", "Effect": "Allow", "Action": [ "glue:GetDataQualityResult" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*" }, { "Sid": "AllowGlueDataQualityStatisticAnnotation", "Effect": "Allow", "Action": [ "glue:PutDataQualityStatisticAnnotation" ], "Resource": [ "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*", "arn:aws:glue:us-east-1:111122223333::job/{JobName}" ] }, { "Sid": "AllowGlueDataQualityProfileAnnotation", "Effect": "Allow", "Action": [ "glue:PutDataQualityProfileAnnotation" ], "Resource": [ "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*", "arn:aws:glue:us-east-1:111122223333::job/{JobName}" ] } ] }