MaxCompute studio与权限那些事儿

随着 MaxCompute 2.0 的发布,我们提供了MaxCompute Studio,一套基于IntelliJ IDEA的开发插件,让用户在集成开发环境(IDE)中更方便地进行SQL及用户代码开发。MaxCompute Studio 为开发者提供了良好的开发体验,支持项目空间浏览、SQL 脚本开发,UDF开发和调试,作业执行状态展示等功能,本系列将逐一展开进行介绍。

第一弹 - 元数据浏览
第二弹 - 玩转SQL编辑器
第三弹 - UDF开发与调试
第四弹 - 权限那些事儿

背景知识

MaxCompute拥有一套强大的安全体系,来保护项目空间里的数据安全。用户在使用MaxCompute时,应理解权限的一些基本概念:

为了方便用户更好的理解与使用MaxCompute权限,studio实现了以下功能:

权限查看

用户在project下有哪些权限,可通过show grants语句获得。studio编辑器已集成权限相关的语句(https://help.aliyun.com/document_detail/27936.html) 通过快捷键(Windows: Ctrl + J , MAC: Command + J )唤出live template,然后搜索即可:
MaxCompute studio与权限那些事儿

另外,studio对此也提供了图形化的方式显示用户的权限。如下图,点击工具栏上的show privileges按钮,弹出Show user privileges对话框,点击search button, 下方就会显示用户在该project下的权限:
MaxCompute studio与权限那些事儿

json标签页是所有权限的汇总,点击table标签页,则显示用户在table上的权限。鼠标悬停在table标签页上,则提示table的权限说明:
MaxCompute studio与权限那些事儿

权限异常诊断

当因缺少权限导致任务报鉴权失败异常时,可通过studio的权限异常诊断,快速寻找解决方案。如下图,点击工具栏上的权限异常诊断按钮,弹出权限异常诊断对话框,在上方文本框中输入完整的鉴权异常信息,然后点击ok按钮,则下方文本框会显示可能的解决方案:
MaxCompute studio与权限那些事儿

权限语句编写

MaxCompute提供了一系列的权限语句,studio SQL编辑器已集成这些语句,用户可以利用studio来执行这些语句以完成相应的权限操作。具体的,通过快捷键(Windows: Ctrl + J , MAC: Command + J )唤出live template,然后搜索:
MaxCompute studio与权限那些事儿
另外,在编写授权语句过程中,也支持相应的代码智能提示:
MaxCompute studio与权限那些事儿

授权语句生成

除了手写授权语句,studio也支持图形化给用户授权,点击工具栏上的show privileges按钮,弹出Show user privileges对话框,点击Grant privilege标签页,选择好授权对象,下方的SQL窗格就会同步显示其对应的授权语句,然后点击execute grant command,等待后台完成即可。
MaxCompute studio与权限那些事儿

studio中的权限

  • 添加MaxCompute project时,studio会尝试列举project下的所有客体到本机,即用户必须有project的list权限。
  • 显示表详情时,用户必须具备table的describe权限;显示自定义函数,则必须具备function的read权限。在编辑器中编写SQL,用到的table或function,则也必须有上述读权限。
  • 在编辑器中运行某条SQL,则必须具备SQL中表的select权限,同时还必须有project的CreateInstance权限以能提交SQL任务。
  • 开发好了UDF,要想发布,则必须有function的write权限。

权限好文

官方文档 https://help.aliyun.com/document_detail/27926.html
MaxCompute安全管理指南 https://yq.aliyun.com/articles/686800

联系我们

MaxCompute studio插件支持IntelliJ全系产品,具体参考安装文档
MaxCompute studio与权限那些事儿

上一篇:finecms相关信息-随时更新


下一篇:十分钟搞清字符集和字符编码