本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
更改数据湖的默认安全设置
为了保持与的向后兼容性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 权限管理,请执行以下操作:
-
更改新资源的默认安全设置。有关说明,请参阅 更改默认权限模式。
-
更改现有数据目录资源的设置。有关说明,请参阅 升级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": [] } }
您也可以按如下方式对结构进行编码。省略CreateDatabaseDefaultPermissions
或CreateTableDefaultPermissions
参数等同于传递一个空列表。
{ "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_PRINCIPALS
,的唯一允许值Permissions
是ALL
。