本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS Glue 蓝图的角色权限
以下是常见的角色,以及针对 AWS Glue 蓝图角色的 AWS Identity and Access Management(IAM)权限策略建议。
蓝图角色
以下是 AWS Glue 蓝图生命周期中通常涉及的角色。
角色 | 描述 |
---|---|
AWS Glue 开发人员 | 开发、测试和发布蓝图。 |
AWS Glue 管理员 | 蓝图上的注册、维护和授予权限。 |
数据分析人员 | 运行蓝图以创建工作流。 |
有关更多信息,请参阅AWS Glue 中的蓝图概览:
蓝图角色的权限
以下是针对每个蓝图角色的建议权限。
蓝图的 AWS Glue 开发人员权限
AWS Glue 开发人员必须具有写入用于发布蓝图的 Amazon S3 存储桶的权限。通常,开发人员在上传蓝图后注册蓝图。在这种情况下,开发人员需要具有 蓝图的 AWS Glue 管理员权限 中列出的权限。此外,如果开发人员希望在蓝图注册后测试蓝图,还需要具有 蓝图的数据分析人员权限 中列出的权限。
蓝图的 AWS Glue 管理员权限
以下策略授予注册、查看和维护 AWS Glue 蓝图的权限。
重要
在以下策略中,将 <s3-bucket-name>
和 <prefix>
替换为 Amazon S3 路径,以便上传蓝图 ZIP 格式归档来进行注册。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:CreateBlueprint", "glue:UpdateBlueprint", "glue:DeleteBlueprint", "glue:GetBlueprint", "glue:ListBlueprints", "glue:BatchGetBlueprints" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::
<s3-bucket-name>
/<prefix>
/*" } ] }
蓝图的数据分析人员权限
以下策略授予运行蓝图以及查看生成的工作流和工作流组件的权限。它还授予通过 AWS Glue 创建工作流和工作流组件时承担的角色 PassRole
。
该策略授予对任何资源的权限。如果要配置对单个蓝图的精细访问,请使用以下蓝图 ARN 格式:
arn:aws:glue:
<region>
:<account-id>
:blueprint/<blueprint-name>
重要
在以下策略中,将 <account-id>
替换为有效的AWS账户并将 <role-name>
替换为用于运行蓝图的角色的名称。请参阅蓝图角色的权限了解此角色所需的权限。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:ListBlueprints", "glue:GetBlueprint", "glue:StartBlueprintRun", "glue:GetBlueprintRun", "glue:GetBlueprintRuns", "glue:GetCrawler", "glue:ListTriggers", "glue:ListJobs", "glue:BatchGetCrawlers", "glue:GetTrigger", "glue:BatchGetWorkflows", "glue:BatchGetTriggers", "glue:BatchGetJobs", "glue:BatchGetBlueprints", "glue:GetWorkflowRun", "glue:GetWorkflowRuns", "glue:ListCrawlers", "glue:ListWorkflows", "glue:GetJob", "glue:GetWorkflow", "glue:StartWorkflowRun" ], "Resource": "*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::
<account-id>
:role/<role-name>
" } ] }
蓝图角色的权限
以下是针对用于从蓝图创建工作流的 IAM 角色的建议权限。此角色必须与 glue.amazonaws.com
具有信任关系。
重要
在以下策略中,将 <account-id>
替换为有效的AWS账户并将 <role-name>
替换为角色的名称。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:CreateJob", "glue:GetCrawler", "glue:GetTrigger", "glue:DeleteCrawler", "glue:CreateTrigger", "glue:DeleteTrigger", "glue:DeleteJob", "glue:CreateWorkflow", "glue:DeleteWorkflow", "glue:GetJob", "glue:GetWorkflow", "glue:CreateCrawler" ], "Resource": "*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::
<account-id>
:role/<role-name>
" } ] }
注意
如果工作流中的任务和爬网程序担任此角色以外的角色,则此策略必须包含 iam:PassRole
权限,而不是蓝图角色上的权限。