AWS Glue Studio ユーザーに必要な IAM アクセスアクセス許可を確認します
AWS Glue Studio を使用するには、ユーザーはさまざまな AWS リソースにアクセスできる必要があります。ユーザーは、Amazon S3 バケット、IAM ポリシーとロール、および AWS Glue Data Catalog オブジェクト。
AWS Glue サービスのアクセス許可
AWS Glue Studio は、AWS Glue サービスのアクションとリソースを使用します。AWS Glue Studio を効果的に使用するには、ユーザーはこれらのアクションやリソースに対するアクセス許可が必要です。AWS Glue Studio ユーザーに AWSGlueConsoleFullAccess
マネージドポリシーを付与するか、より少ないアクセス許可の組み合わせでカスタムポリシーを作成できます。
重要
セキュリティのベストプラクティスに従って、ポリシーを強化して、Amazon S3 バケットおよび Amazon CloudWatch ロググループへのアクセスをさらに制限することが推奨されます。Amazon S3 ポリシーの例については、「Writing IAM Policies: How to Grant Access to an Amazon S3 Bucket
AWS Glue Studio のためのカスタム IAM ポリシーの作成
AWS Glue Studio では、カスタムポリシーを作成するためのアクセス許可セットを、より小規模にできます。カスタムポリシーは、オブジェクトまたはアクションのサブセットに対しアクセス許可を付与できます。カスタムポリシーを作成する際には、以下の情報を参考にしてください。
AWS Glue Studio API を使用するには、IAM アクセス許可のアクションポリシーに glue:UseGlueStudio
を含めます。glue:UseGlueStudio
を使用することで、時間の経過とともに API にさらにアクションが追加されても、すべての AWS Glue Studio アクションにアクセスできます。
AWS Glue で定義されるアクションの詳細については、「AWS Glue で定義されるアクション」を参照してください。
データ準備の作成アクション
-
SendRecipeAction
-
GetRecipeAction
有向非巡回 (DAG) に関するアクション
-
CreateDag
-
UpdateDag
-
GetDag
-
DeleteDag
ジョブに関するアクション
-
SaveJob
-
GetJob
-
CreateJob
-
DeleteJob
-
GetJobs
-
UpdateJob
ジョブ実行に関するアクション
-
StartJobRun
-
GetJobRuns
-
BatchStopJobRun
-
GetJobRun
-
QueryJobRuns
-
QueryJobs
-
QueryJobRunsAggregated
スキーマに関するアクション
-
GetSchema
-
GetInferredSchema
データベースに関するアクション
-
GetDatabases
プランに関するアクション
-
GetPlan
テーブルに関するアクション
-
SearchTables
-
GetTables
-
GetTable
接続に関するアクション
-
CreateConnection
-
DeleteConnection
UpdateConnection
-
GetConnections
-
GetConnection
マッピングに関するアクション
-
GetMapping
S3 プロキシに関するアクション
-
ListBuckets
-
ListObjectsV2
-
GetBucketLocation
セキュリティ設定に関するアクション
-
GetSecurityConfigurations
スクリプトに関するアクション
-
CreateScript (AWS Glue での同じ名前の API とは異なります)
AWS Glue Studio API へのアクセス
AWS Glue Studio にアクセスするには、IAM アクセス許可のアクションポリシーリストに glue:UseGlueStudio
を追加します。
以下の例では、glue:UseGlueStudio
はアクションポリシーに含まれますが、AWS Glue Studio API は個別に識別されません。これは、glue:UseGlueStudio
を含めることで、IAMアクセス許可で個別に AWS Glue Studio APIを指定する必要なしに、内部 API へのアクセス許可が自動的に付与されるためです。
この例では、リストされた追加のアクションポリシー (glue:SearchTables
など) が AWS Glue Studio API ではないため、場合によっては IAM アクセス許可に含める必要があります。Amazon S3 プロキシアクションを含めて、付与する Amazon S3 アクセス許可のレベルを指定することもできます。以下のポリシーの例では、選択した IAM ロールに十分なアクセス許可がある場合に、AWS Glue Studio を開く、ビジュアルジョブを作成する、ビジュアルジョブを保存/実行するためのアクセス許可が付与されます。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "glue:UseGlueStudio", "iam:ListRoles", "iam:ListUsers", "iam:ListGroups", "iam:ListRolePolicies", "iam:GetRole", "iam:GetRolePolicy", "glue:SearchTables", "glue:GetConnections", "glue:GetJobs", "glue:GetTables", "glue:BatchStopJobRun", "glue:GetSecurityConfigurations", "glue:DeleteJob", "glue:GetDatabases", "glue:CreateConnection", "glue:GetSchema", "glue:GetTable", "glue:GetMapping", "glue:CreateJob", "glue:DeleteConnection", "glue:CreateScript", "glue:UpdateConnection", "glue:GetConnection", "glue:StartJobRun", "glue:GetJobRun", "glue:UpdateJob", "glue:GetPlan", "glue:GetJobRuns", "glue:GetTags", "glue:GetJob", "glue:QueryJobRuns", "glue:QueryJobs", "glue:QueryJobRunsAggregated", "glue:SendRecipeAction", "glue:GetRecipeAction" ], "Resource": "*" }, { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": "arn:aws:iam::*:role/AWSGlueServiceRole*", "Condition": { "StringLike": { "iam:PassedToService": [ "glue.amazonaws.com" ] } } } ] }
ノートブックとデータのプレビューアクセス許可
データプレビューとノートブックを使用すると、ジョブを実行することなく、ジョブの任意の段階(読み取り、変換、書き込み)でデータのサンプルを表示できます。データにアクセスするときに使用する AWS Identity and Access Management の AWS Glue Studio (IAM)ロールを指定します。IAM ロールは想定可能であることを意図しており、標準の長期認証情報 (パスワードやアクセスキーなど)を関連付けることはありません。その代わり、AWS Glue Studio がそのロールを引き受けて、IAM は一時的なセキュリティ認証情報を提供します。
データプレビューとノートブックコマンドが正しく動作するようにするには、文字列 AWSGlueServiceRole
で始まる名前のロールを使用します。ロールに別の名前を使用する場合は、iam:passrole
アクセス許可を追加し、IAM のロールに対するポリシーを設定する必要があります。詳しくは、「「AWSGlueServiceRole*」 という名前ではないロールの IAM ポリシーを作成します。 」を参照してください。
警告
ロールがノートブックに対する iam:passrole
アクセス許可を与えた場合、ロールチェーンを実装すると、あるユーザーが意図せずにノートブックにアクセスする可能性があります。現在、ノートブックへアクセス許可されているユーザーをモニタリングできる監査は実装されていません。
IAM ID によるデータプレビューセッションの作成を認めない場合は、「ID によるデータプレビューセッションの作成を拒否する」の例を参照してください。
Amazon CloudWatch のアクセス許可
AWS Glue Studio を使用して Amazon CloudWatch ジョブをモニタリングできます。これは、AWS Glue から raw データを収集して読み取り可能なほぼリアルタイムのメトリクスに処理します。デフォルトでは、AWS Glue メトリクスデータは CloudWatch に自動的に送信されます。詳細については、 Amazon CloudWatch ユーザーガイドの「Amazon CloudWatch とは何ですか?」およびAWS Glue デベロッパーガイドの「AWS Glue メトリクス」を参照してください。
CloudWatch ダッシュボードにアクセスするには、AWS Glue Studio では以下のいずれかが必要です。
-
AdministratorAccess
ポリシー -
CloudWatchFullAccess
ポリシー -
これらの特定のアクセス許可の 1 つ以上を含むカスタムポリシー。
-
cloudwatch:GetDashboard
およびcloudwatch:ListDashboards
でダッシュボードを表示する -
cloudwatch:PutDashboard
でダッシュボードを作成または変更する -
cloudwatch:DeleteDashboards
でダッシュボードを削除する
-
ポリシーを使用してIAMユーザーのアクセス許可を変更する方法の詳細については、IAM ユーザーガイドのIAM ユーザーのアクセス許可の変更を参照してください。