

# クローラーの前提条件
<a name="crawler-prereqs"></a>

クローラーは、定義する時に指定する AWS Identity and Access Management (IAM) ロール のアクセス許可を取得します。この IAM ロールには、データストアからデータを抽出してデータカタログに書き込むためのアクセス許可が必要です。AWS Glue コンソールには、AWS Glue プリンシパルサービスの信頼ポリシーがアタッチされた IAM ロールだけがリスト表示されています。コンソールから、クローラーがアクセスするAmazon S3 データストアにアクセスするための IAM ポリシーを持つ IAM ロールを作成できます。AWS Glue のロールの指定の詳細については、「[AWS Glue のアイデンティティベースのポリシー](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies)」を参照してください。

**注記**  
Delta Lake データストアをクロールする場合、Amazon S3 の場所に対する読み取り/書き込み権限が必要です。

クローラーには、ロールを作成して次のポリシーをアタッチできるようになりました。
+ `AWSGlueServiceRole` AWS 管理ポリシー。データカタログに必要なアクセス許可を付与します。
+ データソースに対するアクセス許可を付与するインラインポリシー。
+ ロールに対する `iam:PassRole` アクセス許可を付与するインラインポリシー。

AWS Glue コンソールクローラーウィザードにロールを作成させるのが、より迅速なアプローチです。これによって作成されるロールは、クローラー専用であり、`AWSGlueServiceRole` AWS 管理ポリシーと、指定したデータソースに必要なインラインポリシーを含んでいます。

クローラーに既存のロールを指定する場合は、そのロールに `AWSGlueServiceRole` ポリシーまたは同等のポリシー (またはこのポリシーのスコープダウンバージョン) と、必要なインラインポリシーが含まれてることを確認します。例えば、Amazon S3 データストアの場合、インラインポリシーは少なくとも次のようになります。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject"
      ],
      "Resource": [
        "arn:aws:s3:::bucket/object*"
      ]
    }
  ]
}
```

------

Amazon DynamoDB データストアの場合、ポリシーは、少なくとも次のようになります。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:DescribeTable",
        "dynamodb:Scan"
      ],
      "Resource": [
        "arn:aws:dynamodb:us-east-1:111122223333:table/table-name*"
      ]
    }
  ]
}
```

------

また、クローラーが AWS Key Management Service (AWS KMS) 暗号化 Amazon S3 データを読み取る場合、IAM ロールには AWS KMS キーの復号化のアクセス許可が必要です。詳細については、「[ステップ 2: AWS Glue 用の IAM ロールを作成する](create-an-iam-role.md)」を参照してください。