将 Amazon S3 表类数据存储服务目录与 Data Catalog 和 Lake Formation 集成的先决条件 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

将 Amazon S3 表类数据存储服务目录与 Data Catalog 和 Lake Formation 集成的先决条件

以下是将 Amazon S3 表类数据存储服务与 Amazon Glue Data Catalog 和 Amazon Lake Formation 集成的先决条件。

  1. Amazon 分析服务集成流程已更新。如果您已使用预览版设置了集成,则可以继续使用当前的集成。但是,更新的集成流程实现了性能改进。要更新集成,请执行以下操作:

    1. 首先,在 Lake Formation 中删除现有的 S3 表目录。要删除目录,请从目录列表中选择 S3tablescatalog 目录,然后从操作中选择删除

    2. 接下来,取消注册 S3tablescatalog 的数据位置。

      1. 在 Lake Formation 控制台的管理部分,选择数据位置

      2. 选择一个位置,然后从操作菜单中选择删除

      3. 当系统提示进行确认时,选择删除

        有关取消注册数据位置的详细说明,请参阅取消注册 Amazon S3 位置小节。

      4. 然后,按照 启用 Amazon S3 表类数据存储服务集成 小节中更新的集成步骤进行操作。

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

  3. 启用 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/*" ] } ] }

    有关更多信息,请参阅用于注册位置的角色的要求

  4. 将以下信任策略添加到 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 ] }