我注意到 LakeFormation SDK 调用(通过 AWS CLI 的 boto3 和通过 Terraform 的 Go)ALL
在分配给资源的权限列表中返回。
例如:
"PrincipalResourcePermissions": [
{
"Principal": {
"DataLakePrincipalIdentifier": "arn:aws:iam::ACCOUNT:role/FooRole"
},
"Resource": {
"Table": {
"CatalogId": "ACCOUNT",
"DatabaseName": "lf_test",
"Name": "foo"
}
},
"Permissions": [
"ALL",
"DESCRIBE"
],
"PermissionsWithGrantOption": []
}
然而,我不能删除这个“ALL”权限。尝试使用 AWS CLI 或 Terraform 撤销会导致错误:
An error occurred (InvalidInputException) when calling the RevokePermissions operation: No permissions revoked. Grantee does not have:[ALL]
这里发生了什么,除了忽略“ALL”的特殊情况之外,我该如何解决?