更改数据湖的默认安全设置 - 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 FormationPutDataLakeSettings API 操作更改默认安全设置

您还可以使用 Lake Formation PutDataLakeSettingsAPI 操作更改默认安全设置。此操作将可选的目录 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结构中,的唯一允许值DataLakePrincipalIdentifierIAM_ALLOWED_PRINCIPALS,的唯一允许值PermissionsALL