Jenkins Cumulus流水线配置LF-Tag时LakeFormation权限不足问题
回答
解决第一个权限错误的步骤
确认数据库的TAG权限授予
即使角色有Lake Formation管理权限,若目标数据库a_database的TAG权限未授予该角色,标签绑定会失败。通过AWS CLI执行以下命令授权:aws lakeformation grant-permissions \ --principal DataLakePrincipalIdentifier=arn:aws:iam::[你的AWS账号ID]:role/[Jenkins Cumulus角色名] \ --permissions "TAG" \ --resource '{ "Database": { "Name": "a_database" } }'也可以通过Lake Formation控制台,找到目标数据库,给该角色添加TAG权限。
检查自定义策略的完整性
复制AWSLakeFormationDataAdmin策略时,可能误删了标签绑定的核心权限。确保自定义策略包含以下权限:lakeformation:CreateLFTaglakeformation:AddLFTagsToResourcelakeformation:RemoveLFTagsFromResourcelakeformation:DescribeResource
验证资源的Lake Formation所有权
确认目标数据库a_database的Lake Formation所有权是否正确,若所有权属于其他主体,需要先将所有权转移或授权当前角色操作权限。
解决AirFlow相关错误的步骤
这个错误是因为复制角色策略时引入了不必要的AirFlow权限声明,解决方法:
- 停止复制角色所有策略到配置文件,仅保留Lake Formation和Glue相关的必要权限策略即可。
- 若必须保留策略复制,检查复制的内容,删除所有与
airflow:GetEnvironment相关的权限语句。
内容的提问来源于stack exchange,提问作者Shush
相关产品推荐
相关产品推荐

