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

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

更改数据湖的默认安全设置

保持向后兼容Amazon Glue、Amazon Lake Formation具有以下初始安全设置:

  • 这些区域有:Super已向组授予权限IAMAllowedPrincipals在所有现有Amazon Glue数据目录资源。

  • 已为新数据目录资源启用 “仅使用 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 更改默认安全设置PutDataLakeSettingsAPI 操作

您也可以使用 Lake Formation 更改默认安全设置。PutDataLakeSettings操作(Python:put_data_lake_settings). 此操作采用一个可选的目录 ID 和DataLake设置结构.

为了强制 Lake Formation 对新数据库和表格实施元数据和底层数据访问控制,请对DataLakeSettings结构如下所示。

注意

Replace<AccountID>使用有效Amazon账户 ID 和<Username>具有有效的 IAM 用户名。您可以指定多个用户作为数据湖管理员。

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

你也可以按如下方式对结构进行编码。忽略CreateDatabaseDefaultPermissions要么CreateTableDefaultPermissions参数相当于传入空列表。

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

此操作有效地撤销了所有 Lake Formation 权限IAMAllowedPrincipals在新的数据库和表上进行组。创建数据库时,您可以覆盖此设置。

要仅由 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" ] } ] } }

这授予SuperLake Formation 许可IAMAllowedPrincipals在新的数据库和表上进行组。创建数据库时,您可以覆盖此设置。

注意

在上述内容中DataLakeSettings结构,唯一允许的值DataLakePrincipalIdentifierIAM_ALLOWED_PRINCIPALS,以及唯一允许的值PermissionsALL.