将 Amazon Glue 资源转换为混合资源 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

将 Amazon Glue 资源转换为混合资源

按照以下步骤在混合访问模式下注册 Amazon S3 位置,并在不中断现有数据目录用户数据访问的情况下引导新的 Lake Formation 用户。

场景描述 - 数据位置未在 Lake Formation 中注册,用户对数据目录数据库和表的访问权限由适用于 Amazon S3 和 Amazon Glue 操作的 IAM 权限策略决定。
 默认情况下,IAMAllowedPrincipals 组拥有对数据库中所有表的 Super 权限。

为未在 Lake Formation 中注册的数据位置启用混合访问模式
  1. 注册 Amazon S3 位置,以启用混合访问模式。
    Console
    1. 以数据湖管理员的身份登录 Lake Formation 控制台

    2. 在导航窗格中,选择管理下的数据湖位置

    3. 选择注册位置

    4. 注册位置窗口中,选择要在 Lake Formation 中注册的 Amazon S3 路径。

    5. 对于 IAM 角色,选择 AWSServiceRoleForLakeFormationDataAccess 服务相关角色(默认)或符合用于注册位置的角色的要求中要求的自定义 IAM 角色。

    6. 选择混合访问模式以应用精细的 Lake Formation 访问控制策略来选择主体以及指向注册位置的数据目录数据库和表。


      选择 Lake Formation 以允许 Lake Formation 授权对注册位置的访问请求。


    7. 选择注册位置

    Amazon CLI

    以下是使用:true/false 向 Lake Formation 注册数据位置的 HybridAccessEnabled示例。HybridAccessEnabled 参数的默认值为 false。将 Amazon S3 路径、角色名称和 Amazon 账户 ID 替换为有效值。

    aws lakeformation register-resource --cli-input-json file:file path json: { "ResourceArn": "arn:aws:s3:::s3-path", "UseServiceLinkedRole": false, "RoleArn": "arn:aws:iam::<123456789012>:role/<role-name>", "HybridAccessEnabled": true }
  2. 授予权限并选择主体以在混合访问模式下对资源使用 Lake Formation 权限

    在混合访问模式下选择主体和资源之前,请确认在混合访问模式下向 IAMAllowedPrincipals 组授予了对在 Lake Formation 中注册的位置处的数据库和表的 SuperAll 权限。

    注意

    您不能向 IAMAllowedPrincipals 组授予对数据库中 All tables 的权限。您需要从下拉菜单中分别选择每个表并授予权限。此外,在数据库中创建新表时,可以选择使用数据目录设置中的Use only IAM access control for new tables in new databases当您在数据库中创建新表时,此选项会自动向 IAMAllowedPrincipals 组授予 Super 权限。

    Console
    1. 在 Lake Formation 控制台的数据目录下,选择数据库

    2. 从列表中选择数据库或表,然后从 “操作” 菜单中选择 “授权”。

    3. 选择要使用命名资源方法或 LF 标签授予其对数据库、表和列的权限的主体。

      或者,选择数据湖权限,从列表中选择要向其授予权限的主体,然后选择授权

      有关授予数据权限的更多详细信息,请参阅授予和撤销对数据目录资源的权限

      注意

      如果您要向主体授予创建表的权限,则还需要向主体授予数据位置权限 (DATA_LOCATION_ACCESS)。更新表不需要此权限。

      有关更多信息,请参阅 授予数据位置权限

    4. 当您使用命名资源方法授予权限时,授予数据权限页面的下半部分提供了用于选择主体和资源的选项。

      选择让 Lake Formation 权限立即生效,为主体和资源启用 Lake Formation 权限。

    5. 选择授权

      当您在指向数据位置的表 A 上选择主体 A 时,如果数据位置是在混合模式下注册的,则为主体 A 提供对该表的位置的 Lake Formation 权限。

    Amazon CLI

    以下是在混合访问模式下选择主体和表的示例。将角色名、 Amazon 账户 ID、数据库名称和表名替换为有效值。

    aws lakeformation create-lake-formation-opt-in --cli-input-json file://file path json: { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::<123456789012>:role/<hybrid-access-role>" }, "Resource": { "Table": { "CatalogId": "<123456789012>", "DatabaseName": "<hybrid_test>", "Name": "<hybrid_test_table>" } } }
    1. 如果您选择 LF 标签来授予权限,则可以在单独的步骤中选择主体来使用 Lake Formation 权限。您可以通过在左侧导航栏的权限下选择混合访问模式来执行此操作。

    2. 混合访问模式页面的下半部分,选择添加将资源和主体添加到混合访问模式下。

    3. 添加资源和主体页面上,选择在混合访问模式下注册的数据库和表。选择要选择在混合访问模式下使用 Lake Formation 权限的主体。

      您可以选择数据库下的 All tables 以授予主体访问权限。