クローラーの前提条件
クローラーは、定義する時に指定する AWS Identity and Access Management (IAM) ロール のアクセス許可を取得します。この IAM ロールには、データストアからデータを抽出してデータカタログに書き込むためのアクセス許可が必要です。AWS Glue コンソールには、AWS Glue プリンシパルサービスの信頼ポリシーがアタッチされた IAM ロールだけがリスト表示されています。コンソールから、クローラーがアクセスするAmazon S3 データストアにアクセスするための IAM ポリシーを持つ IAM ロールを作成できます。AWS Glue のロールの指定の詳細については、「AWS Glue のアイデンティティベースのポリシー」を参照してください。
注記
Delta Lake データストアをクロールする場合、Amazon S3 の場所に対する読み取り/書き込み権限が必要です。
クローラーには、ロールを作成して次のポリシーをアタッチできるようになりました。
-
AWSGlueServiceRole
AWS 管理ポリシー。データカタログに必要なアクセス許可を付与します。 -
データソースに対するアクセス許可を付与するインラインポリシー。
ロールに対する
iam:PassRole
アクセス許可を付与するインラインポリシー。
AWS Glue コンソールクローラーウィザードにロールを作成させるのが、より迅速なアプローチです。これによって作成されるロールは、クローラー専用であり、AWSGlueServiceRole
AWS 管理ポリシーと、指定したデータソースに必要なインラインポリシーを含んでいます。
クローラーに既存のロールを指定する場合は、そのロールに AWSGlueServiceRole
ポリシーまたは同等のポリシー (またはこのポリシーのスコープダウンバージョン) と、必要なインラインポリシーが含まれてることを確認します。例えば、Amazon S3 データストアの場合、インラインポリシーは少なくとも次のようになります。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
bucket/object
*" ] } ] }
Amazon DynamoDB データストアの場合、ポリシーは、少なくとも次のようになります。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:DescribeTable", "dynamodb:Scan" ], "Resource": [ "arn:aws:dynamodb:
region
:account-id
:table/table-name
*" ] } ] }
また、クローラーが AWS Key Management Service (AWS KMS) 暗号化 Amazon S3 データを読み取る場合、IAM ロールには AWS KMS キーの復号化のアクセス許可が必要です。詳細については、「ステップ 2: AWS Glue 用の IAM ロールを作成する」を参照してください。