本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为 AWS Glue 数据质量配置 IAM 权限
本主题提供的信息可帮助您了解 IAM 管理员可以在 AWS Glue 数据质量的 AWS Identity and Access Management (IAM) 策略中使用的操作和资源。它还包括 IAM policy 示例,其中包含在 AWS Glue Data Catalog 中使用 AWS Glue 数据质量所需的最低权限。
有关 AWS Glue 的其他安全信息,请参阅 AWS Glue 中的安全性。
AWS Glue 数据质量的 IAM 权限
下表列出了用户执行特定 AWS Glue 数据质量操作所需的权限。要为 Gl AWS ue 数据质量设置细粒度授权,您可以在 IAM 策略声明的Action
元素中指定这些操作。
AWS Glue Data Quality 操作 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
操作 | 描述 | 资源类型 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:CreateDataQualityRuleset |
授予权限以创建数据质量规则集。 | ::dataQualityRuleset/<name> |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:DeleteDataQualityRuleset |
授予权限以删除数据质量规则集。 | ::dataQualityRuleset/<name> |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:GetDataQualityRuleset |
授予权限以检索数据质量规则集。 | ::dataQualityRuleset/<name> |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:ListDataQualityRulesets |
授予权限以检索所有数据质量规则集。 | ::dataQualityRuleset/* |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:UpdateDataQualityRuleset |
授予权限以更新数据质量规则集。 | ::dataQualityRuleset/<name> |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:GetDataQualityResult |
授予权限以检索数据质量任务运行结果。 | ::dataQualityRuleset/<name> |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:ListDataQualityResults |
授予权限以检索所有数据质量任务运行结果。 | ::dataQualityRuleset/* |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:CancelDataQualityRuleRecommendationRun |
授予权限以停止正在运行的数据质量建议任务运行。 | ::dataQualityRuleset/* |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:GetDataQualityRuleRecommendationRun |
授予权限以检索数据质量建议任务运行。 | ::dataQualityRuleset/* |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:ListDataQualityRuleRecommendationRuns |
授予权限以检索所有数据质量建议任务运行。 | ::dataQualityRuleset/* |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:StartDataQualityRuleRecommendationRun |
授予权限以开始数据质量规则建议任务运行。 | ::dataQualityRuleset/* |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:CancelDataQualityRulesetEvaluationRun |
授予权限以停止正在运行的数据质量任务运行。 | ::dataQualityRuleset/* |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:GetDataQualityRulesetEvaluationRun |
授予权限以检索数据质量任务运行结果。 | ::dataQualityRuleset/* |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:ListDataQualityRulesetEvaluationRuns |
授予权限以检索所有数据质量任务运行。 | ::dataQualityRuleset/* |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:StartDataQualityRulesetEvaluationRun |
授予权限以开始数据质量规则任务运行。 | ::dataQualityRuleset/<name> |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glue:PublishDataQuality |
授予权限以发布数据质量结果。 | ::dataQualityRuleset/<name> |
安排评估运行需要 IAM 设置
IAM 权限
要运行计划的数据质量评估运行,必须将IAM:PassRole
操作添加到权限策略中。
AWS EventBridge 日程安排器所需的权限 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
操作 | 描述 | 资源类型 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
iam:PassRole |
向 IAM 授予权限,允许用户传递已批准的角色。 | 用于调用的角色的 ARN StartDataQualityRulesetEvaluationRun |
如果没有这些权限,则会发生以下错误:
"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"
IAM 可信实体
AWSGlue 和 AWS EventBridge Scheduler 服务需要在可信实体中列出,才能创建和运行定时StartDataQualityEvaluationRun
服务。
{ "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 policy
AWS Glue 数据质量的 IAM 角色需要以下类型的权限:
-
AWS Glue Data Quality 操作权限,以便您获得推荐的数据质量规则,并针对 AWS Glue Data Catalog 中的表运行数据质量任务。本节中的 IAM policy 示例包括 AWS Glue 数据质量操作所需的最低权限。
-
授予访问 Data Catalog 表和基础数据的权限。这些权限因使用案例而异。例如,对于您在 Amazon S3 中编入目录的数据,权限应包括对 Amazon S3 的访问权限。
注意
除了本节所述的权限外,您还必须配置 Amazon S3 权限。
获取推荐数据质量规则的最低权限
此示例策略包括生成推荐的数据质量规则所需的权限。
{ "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-*" }, { // Optional for Logs "Sid": "AllowPublishingCloudwatchLogs", "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:CreateLogGroup", "logs:PutLogEvents" ], "Resource": "*" }, ] }
运行数据质量任务所需的最低权限。
此示例策略包括运行数据质量评估任务所需的权限。
根据使用案例可选择以下策略声明:
-
AllowCloudWatchPutMetricDataToPublishTaskMetrics
:如果要将数据质量运行指标发布到 Amazon CloudWatch,必须选择此项。 -
AllowS3PutObjectToWriteTaskResults
:如果要将数据质量运行结果写入 Amazon S3,必须选择此项。
{ "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:::<YOUR-BUCKET-NAME>
/*" } ] }