ステップ 2: AWS Glue 用の IAM ロールを作成する
ユーザーに代わり他のサービスを呼び出す際に AWS Glue が引き受けることができる、IAM ロールのアクセス許可を付与する必要があります。これには、AWS Glue で使用するすべてのソース、ターゲット、スクリプト、および一時ディレクトリでの Amazon S3 へのアクセスが含まれます。クローラ、ジョブ、および開発エンドポイントによって許可が必要です。
AWS Identity and Access Management (IAM) を使用してアクセス権限を提供できます。AWS Glue に渡す IAM ロールにポリシーを追加します。
ジョブエディタで IAM ロールを作成するには
-
AWS Glue コンソールでジョブを作成するときは、ロールセクションを見つけます。
-
[Create new role (新しいロールの選択)] を選択します。
-
インラインロール作成フォームが開き、次のことが可能になります:
-
ロール名を指定します。例:
AWSGlueServiceRoleDefault。 -
管理ポリシー
AWSGlueServiceRoleが自動的に選択されます。 -
信頼ポリシーを確認してロールを引き受けます。
-
メタデータのオプションのタグを追加します。
-
-
[Create role (ロールの作成)] を選択します。
-
新しく作成されたロールがジョブに自動的に選択されます。
または、IAM コンソールを使用してロールを作成できます。
IAM コンソールを使用してAWS Glue IAM ロールを作成するには
AWS マネジメントコンソール にサインインして、IAM コンソール https://console.aws.amazon.com/iam/
を開きます。 -
左のナビゲーションペインで、[Roles (ロール)] を選択してください。
-
[Create role (ロールの作成)] を選択します。
-
信頼されたエンティティの種類として [AWS サービス] を選択します。次に、サービスまたはユースケースに対して [AWS Glue] を検索して選択します。[次へ] を選択します。
-
[許可の追加] のページで、必要な許可を含むポリシーを選択します。例えば、一般的な AWS Glue 許可の AWS マネージドポリシー
AWSGlueServiceRoleや Amazon S3 リソースにアクセスするための AWS マネージドポリシー [AmazonS3FullAccess] などがあります。次に、[次へ] を選択します。注記
Amazon S3 のソースとターゲットに対するアクセス許可を、このロールのポリシーの 1 つにより付与してください。独自のポリシーを、特定の Amazon S3 リソースにアクセスするために指定します。データソースには、
s3:ListBucketおよびs3:GetObjectアクセス許可が必要です。データターゲットには、s3:ListBucket、s3:PutObject、s3:DeleteObjectアクセス許可が必要です。リソースの Amazon S3 ポリシーの作成については、「Specifying Resources in a Policy」を参照してください。Amazon S3 ポリシーの例については、「Writing IAM Policies: How to Grant Access to an Amazon S3 Bucket」を参照してください。 SSE-KMS で暗号化された Amazon S3 のソースとターゲットにアクセスする予定がある場合は、AWS Glue のクローラ、ジョブ、開発エンドポイントに、データを復号化するためのポリシーをアタッチしてください。詳細については、「Protecting Data Using Server-Side Encryption with AWS KMS-Managed Keys (SSE-KMS)」を参照してください。
以下に例を示します。
-
ロールに名前を付けて説明 (オプション) を追加したら、信頼ポリシーおよび許可を確認します。[Role name (ロール名)] に、
AWSGlueServiceRoleDefaultなどのロール名を入力します。コンソールユーザーからサービスにロールを渡すには、名前に文字列AWSGlueServiceRoleのプレフィックスが付けられたロールを作成します。AWSGlueServiceRoleが提供するポリシーでは、IAM サービスロールが AWS Glue で始まることを想定しています。それ以外の場合は、ユーザーにポリシーを追加して、IAM ロールのiam:PassRoleアクセス許可をユーザーの命名規則に一致させる必要があります。[Create Role (ロールの作成)] を選択します。注記
ロールを使用してノートブックを作成すると、そのロールがインタラクティブセッションに渡され、その両方で同じロールを使用できるようになります。このように、
iam:PassRoleのアクセス許可がロールのポリシーの一部として必要です。次の例を使用して、ロール用の新しいポリシーを作成します。アカウント番号とロール名を自分のものに置き換えます。
-
ロールにタグを追加します (オプション)。タグは AWS リソースに追加できるキーと値のペアであり、リソースの識別、整理、検索するために役立ちます。続いて、[Create role (ロールの作成)] を選択します。