开发者社区 问答 正文

MaxCompute用户指南:安全指南:快速开始:添加用户并授权



场景描述:Jack是项目空间prj1的管理员,一个新加入的项目组成员Alice(已拥有云账号: alice@aliyun.com)申请加入项目空间prj1,并申请如下权限:查看Table列表,提交作业,创建表。
操作步骤:(由项目空间管理员来操作)    use prj1;add user aliyun$ alice@aliyun.com;  --添加用户grant List, CreateTable, CreateInstance on project prj1 to user aliyun$ alice@aliyun.com; --使用grant语句对用户授权  

展开
收起
行者武松 2017-10-24 10:42:54 1864 分享 版权
阿里云 AI 助理回答

根据您的场景描述,Jack作为项目空间prj1的管理员,需要通过一系列操作来满足新成员Alice的权限需求。您已经正确地概述了基本的操作步骤,但请注意,在MaxCompute(原名ODPS)中,权限管理的具体语法和命令可能与您提供的略有不同。下面是根据MaxCompute权限管理实践调整后的操作步骤:

步骤 1: 切换到项目空间

首先,确保Jack用户登录并切换到了正确的项目空间prj1。这一步您已经正确指出,使用命令:

use prj1;

步骤 2: 添加用户到项目空间

在MaxCompute中,直接添加用户的命令格式稍有不同,通常不需要前缀aliyun$,直接使用用户的云账号邮箱即可。所以,添加Alice到项目空间的命令应为:

add user alice@aliyun.com;

步骤 3: 授予权限

接下来,为了满足Alice的权限需求,即查看Table列表、提交作业、创建表,我们需要分别授予相应的权限。在MaxCompute中,权限分配是基于角色的,因此最接近的实践是将预定义或自定义角色赋予用户。不过,按照您的要求,我们可以尝试直接使用grant语句,尽管实际中可能更推荐通过角色来管理权限。

  • 查看Table列表:实际上,查看Table列表的权限通常是通过select权限隐式包含的,因为浏览表信息属于数据查询的一部分。
  • 提交作业:这通常涉及到执行权限,可以通过CreateInstance来近似实现,它允许用户创建执行实例,包括SQL任务等。
  • 创建表:对应于CreateTable权限。

因此,结合这些需求,正确的授权命令可能是:

grant read on project prj1 to user alice@aliyun.com; -- 允许查看Table列表(read权限包含了查看元数据)
grant CreateInstance on project prj1 to user alice@aliyun.com; -- 允许提交作业
grant CreateTable on project prj1 to user alice@aliyun.com; -- 允许创建表

请注意,上述read权限是为了满足查看Table列表的需求,但在实际操作中,具体权限配置可能会根据组织的安全策略有所不同,且MaxCompute的权限模型可能有所更新,请参考最新的官方文档进行操作。

总结

请确保遵循阿里云MaxCompute的最新文档指导进行操作,特别是关于权限管理和用户管理的部分,因为平台功能和命令可能会随时间而更新。如果在操作过程中遇到任何问题,建议直接查阅阿里云MaxCompute的官方帮助文档或联系阿里云客服获取帮助。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答