场景: 一个企业使用多款阿里云产品,MaxCompute是其中一个产品,用的是同个主账号,主账号不是由使用MaxCompute的大数据同学管理, 大数据同学使用的是子账号。大数据同学日常需要给MaxCompute项目 操作新增子账号(add user),新的子账号授权(grant xx on project/table)等操作,即日常权限管理。
背景知识:
- MaxCompute项目权限管理默认只有owner可以操作,而MaxCompute项目的owner只能是主账号。
- 子账号开通MaxCompute并创建项目,项目的owner依然是对应的主账号。
- DataWorks中,子账号拥有项目空间的“项目管理员”或“安全管理员”角色,都只是拥有对应DataWorks的操作权限,并不能操作MaxCompute 项目的权限管理。具体可参考《DataWorks角色权限和MaxCompute 角色权限关系》。
解决方案:
指定一个子账号作为大数据MaxCompute的权限管理账号,让主账号给该子账号授admin role
--如主账号是bob@aliyun.com,作为日常权限管理的子账号是Allen
grant admin TO ram$bob@aliyun.com:Allen;
注意admin可以满足常用的一些日常权限管理,但并不能代替owner做所有管理,此时还是必须要owner才能进行操作。