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

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

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

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

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

    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 注册表存储桶位置,您需要一个 role/user 具有lakeformation:RegisterResourcelakeformation:RegisterResourceWithPrivilegedAccess、和lakeformation: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 ] }