AWS Glue ブループリントでのペルソナおよびロール用の許可 - AWS Glue

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> を、登録のためにアップロードされた設計図の ZIP アーカイブを指す Amazon S3 パスに置き換えます。

{ "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>/*" } ] }

設計図のためのデータアナリストの権限

次のポリシーは、設計図を実行し、結果のワークフローとワークフローコンポーネントを表示するアクセス許可を付与します。また、ワークフローおよびワークフローコンポーネントを作成するために PassRole が引き受ける、AWS Glue というロールを付与ます。

このポリシーでは、任意のリソースに対するアクセス許可が付与されます。個々の設計図へのきめ細かなアクセスを構成する場合は、設計図の 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 アクセス許可を付与する必要があります。