

# 步骤 3：配置安全设置
<a name="define-crawler-configure-security-settings"></a>

**IAM 角色**  
爬网程序将担任此角色。它必须具有类似于 AWS 托管式策略 `AWSGlueServiceRole` 的权限。对于 Amazon S3 和 DynamoDB 源，它还必须具有访问数据存储的权限。如果爬网程序读取使用 AWS Key Management Service（AWS KMS）加密的 Amazon S3 数据，则该角色必须具有 AWS KMS 密钥的解密权限。  
对于 Amazon S3 数据存储，附加到角色的其他权限类似于以下内容：    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:PutObject"
      ],
      "Resource": [
        "arn:aws:s3:::bucket/object*"
      ]
    }
  ]
}
```
对于 Amazon DynamoDB 数据存储，附加到角色的其他权限类似于以下内容：    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:DescribeTable",
        "dynamodb:Scan"
      ],
      "Resource": [
        "arn:aws:dynamodb:*:111122223333:table/table-name*"
      ]
    }
  ]
}
```
 要添加自己的 JDBC 驱动程序，需要添加其他权限。  
+  授予以下作业操作的权限：`CreateJob`、`DeleteJob`、`GetJob`、`GetJobRun`、`StartJobRun`。
+  授予 Amazon S3 操作的权限：`s3:DeleteObjects`、`s3:GetObject`、`s3:ListBucket`、`s3:PutObject`。
**注意**  
如果禁用 Amazon S3 存储桶策略，则不需要使用 `s3:ListBucket`。
+  在 Amazon S3 策略中授予服务主体访问存储桶/文件夹的权限。
 Amazon S3 策略示例：    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:DeleteObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket/driver-parent-folder/driver.jar",
                "arn:aws:s3:::amzn-s3-demo-bucket"
            ]
        }
    ]
}
```
 AWS Glue创建以下文件夹（`_crawler` 和 `_glue_job_crawler`，级别与 Amazon S3 存储桶中的 JDBC 驱动程序相同）。例如，如果驱动程序路径为 `<s3-path/driver_folder/driver.jar>`，则将创建以下文件夹（如果这些文件夹尚不存在）：  
+  <s3-path/driver\$1folder/\$1crawler> 
+  <s3-path/driver\$1folder/\$1glue\$1job\$1crawler> 
 （可选）您可以向爬网程序添加安全配置来指定静态加密选项。  
有关更多信息，请参阅[步骤 2：为 AWS Glue 创建 IAM 角色](create-an-iam-role.md)和[适用于 AWS Glue 的 Identity and Access Management](security-iam.md)。

**Lake Formation 配置 — 可选**  
允许爬网程序使用 Lake Formation 凭证爬取数据存储。  
选中 **Use Lake Formation credentials for crawling S3 data source**（使用 Lake Formation 凭证爬取 S3 数据源）将允许爬网程序使用 Lake Formation 凭证爬取数据源。如果数据源属于另一个账户，则必须提供注册的账户 ID。否则，爬网程序将仅爬取与该账户关联的数据源。仅适用于 Amazon S3 和数据目录数据源。

**安全配置 — 可选**  
设置包括安全配置。有关更多信息，请参阅下列内容：  
+ [加密 AWS Glue 写入的数据](encryption-security-configuration.md)
在爬网程序上设置安全配置后，您可以进行更改，但不能将其移除。要降低爬虫的安全性级别，请在配置中将安全功能显式设置为 `DISABLED`，或者创建一个新的爬网程序。