

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 将 Amazon S3 表类数据存储服务目录与 Data Catalog 和 Lake Formation 集成的先决条件
<a name="s3tables-catalog-prerequisites"></a>

以下是启用 Amazon S3 表与 Amazon Glue Data Catalog 和集成的先决条件 Amazon Lake Formation。

1.  当您启用 Amazon S3 表类数据存储服务集成时，Lake Formation 会自动注册 S3 表的位置。要向 Lake Formation 注册表存储桶位置，您需要一个 role/user 具有`lakeformation:RegisterResource``lakeformation:RegisterResourceWithPrivilegedAccess`、和`lakeformation:CreateCatalog`权限的 IAM。当具有这些权限的非管理员用户注册目录位置时，Lake Formation 会自动向他们授予该位置的 `DATA_LOCATION_ACCESS` 权限，从而允许调用主体对注册的数据位置执行所有支持的 Lake Formation 操作。

1. <a name="step3-permissions"></a> 启用 S3 表集成时，您需要为 Lake Formation 选择一个 IAM 角色来提供凭证，以便允许数据访问。为 Lake Formation 创建一个 IAM 角色，用于访问存储在 S3 表存储桶中的数据。向 Lake Formation 注册表存储桶时使用的 IAM 角色需要以下权限：

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "LakeFormationPermissionsForS3ListTableBucket",
               "Effect": "Allow",
               "Action": [
                   "s3tables:ListTableBuckets"
               ],
               "Resource": [
                   "*"
               ]
           },
           {
               "Sid": "LakeFormationDataAccessPermissionsForS3TableBucket",
               "Effect": "Allow",
               "Action": [
                   "s3tables:CreateTableBucket",
                   "s3tables:GetTableBucket",
                   "s3tables:CreateNamespace",
                   "s3tables:GetNamespace",
                   "s3tables:ListNamespaces",
                   "s3tables:DeleteNamespace",
                   "s3tables:DeleteTableBucket",
                   "s3tables:CreateTable",
                   "s3tables:DeleteTable",
                   "s3tables:GetTable",
                   "s3tables:ListTables",
                   "s3tables:RenameTable",
                   "s3tables:UpdateTableMetadataLocation",
                   "s3tables:GetTableMetadataLocation",
                   "s3tables:GetTableData",
                   "s3tables:PutTableData"
               ],
               "Resource": [
                   "arn:aws:s3tables:us-east-1:123456789012:bucket/*"
               ]
           }
       ]
   }
   ```

------

   有关更多信息，请参阅 [用于注册位置的角色的要求](registration-role.md)。

1.  将以下信任策略添加到 IAM 角色，以便 Lake Formation 服务代入该角色并将临时凭证提供给集成的分析引擎。

   ```
   {
     "Effect": "Allow",
     "Principal": {
       "Service": "lakeformation.amazonaws.com"
     },
     "Action": [
       "sts:AssumeRole",
       "sts:SetSourceIdentity",
       "sts:SetContext"  # add action to trust relationship when using IAM Identity center principals with Lake Formation
     ]
   }
   ```

**注意**  
 Amazon 分析服务集成流程已更新。如果您已使用预览版设置了集成，则可以继续使用当前的集成。但是，更新的集成流程实现了性能改进。要更新集成，请执行以下操作：  
首先，在 Lake Formation 中删除现有的 S3 表目录。要删除目录，请从目录列表中选择 `s3tablescatalog` 目录，然后从**操作**中选择**删除**。
接下来，取消注册 `s3tablescatalog` 的数据位置。  
在 Lake Formation 控制台的**管理**部分，选择**数据位置**。
选择一个位置，然后从**操作**菜单中选择**删除**。
当系统提示进行确认时，选择**删除**。  
有关取消注册数据位置的详细说明，请参阅一[取消注册 Amazon S3 位置](unregister-location.md)节。
然后，按照本[启用 Amazon S3 表类数据存储服务集成](enable-s3-tables-catalog-integration.md)节中更新的集成步骤进行操作。