更改数据湖的默认设置 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

更改数据湖的默认设置

要保持与 Amazon Glue 的向后兼容性,Amazon Lake Formation 应具有以下初始安全设置:

  • 向组 IAMAllowedPrincipals 授予对所有现有 Amazon Glue 数据目录资源的 Super 权限。

  • 为新的数据目录资源启用“仅使用 IAM 访问控制”设置。

这些设置实际上使对数据目录资源和 Amazon S3 位置的访问只能由 Amazon Identity and Access Management (IAM) 策略控制。单个 Lake Formation 权限无效。

IAMAllowedPrincipals 组包括 IAM 策略允许访问数据目录资源的任何 IAM 用户和角色。Super 权限使主体能够对被授予该权限的数据库或表执行所有支持的 Lake Formation 操作。

要更改安全设置,以便对数据目录资源(数据库和表)的访问由 Lake Formation 权限管理,请执行以下操作:

  1. 更改新资源的默认安全设置。有关说明,请参阅更改默认权限模式或使用混合访问模式

  2. 更改现有数据目录资源的设置。有关说明,请参阅将 Amazon Glue 数据权限升级为 Amazon Lake Formation 模型

使用 Lake Formation PutDataLakeSettings API 操作更改默认安全设置

您也可以使用 Lake Formation PutDataLakeSettings API 操作来更改默认安全设置。此操作采用可选目录 ID 和 DataLakeSettings 结构作为参数。

要通过 Lake Formation 对新数据库和表实施元数据和基础数据访问控制,请按如下方式对 DataLakeSettings 结构进行编码。

注意

<AccountID> 替换为有效的 Amazon 账户 ID,并将 <Username> 替换为有效的 IAM 用户名。您可以将多个用户指定为数据湖管理员。

{ "DataLakeSettings": { "DataLakeAdmins": [ { "DataLakePrincipalIdentifier": "arn:aws:iam::<AccountId>:user/<Username>" } ], "CreateDatabaseDefaultPermissions": [], "CreateTableDefaultPermissions": [] } }

您也可以按如下方式对该结构进行编码。省略 CreateDatabaseDefaultPermissionsCreateTableDefaultPermissions 参数等同于传递空列表。

{ "DataLakeSettings": { "DataLakeAdmins": [ { "DataLakePrincipalIdentifier": "arn:aws:iam::<AccountId>:user/<Username>" } ] } }

此操作实际上会撤销 IAMAllowedPrincipals 组对新数据库和表的所有 Lake Formation 权限。创建数据库时,您可以覆盖此设置。

要仅通过 IAM 对新数据库和表实施元数据和基础数据访问控制,请按如下方式对 DataLakeSettings 结构进行编码。

{ "DataLakeSettings": { "DataLakeAdmins": [ { "DataLakePrincipalIdentifier": "arn:aws:iam::<AccountId>:user/<Username>" } ], "CreateDatabaseDefaultPermissions": [ { "Principal": { "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS" }, "Permissions": [ "ALL" ] } ], "CreateTableDefaultPermissions": [ { "Principal": { "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS" }, "Permissions": [ "ALL" ] } ] } }

这将向 IAMAllowedPrincipals 组授予对新数据库和表的 Super Lake Formation 权限。创建数据库时,您可以覆盖此设置。

注意

在前面的 DataLakeSettings 结构中,DataLakePrincipalIdentifier 的唯一允许值是 IAM_ALLOWED_PRINCIPALSPermissions 的唯一允许值是 ALL