博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MaxCompute/DataWorks权限问题排查建议
阅读量:6983 次
发布时间:2019-06-27

本文共 2305 字,大约阅读时间需要 7 分钟。

MaxCompute/DataWorks权限问题排查建议

__前提:__MaxCompute与DataWorks为两个产品,在权限体系上既有交集又要一定的差别。在权限问题之前需了解两个产品独特的权限体系。

MaxCompute:计算引擎

MaxCompute底层计算引擎有自己的安全权限体系,包括ACL、Policy授权体系。具体可以了解:

DataWorks:数据工场

DataWorks为MaxCompute上层的云数仓开发工具,拥有自身的权限模型外还支持底层MaxCompute底层数据授权体系。具体详见:

查看MaxCompute上的角色

通过MaxCompute Console命令list roles;可以看到角色体系,role_开头都为DataWorks基于MaxCompute封装的角色及权限体系。介绍如下:

rolename
对应产品及权限名称
admin
MaxCompute底层引擎默认admin角色
role_project_admin
DataWorks项目管理员
role_project_deploy
DataWorks部署角色
role_project_dev
DataWorks开发角色
role_project_guest
DataWorks访客角色
role_project_pe
DataWorks运维角色
role_project_scheduler
DataWorks生产代持账号
role_project_security
DataWorks安全管理员

  • __admin:__MaxCompute计算引擎的默认admin角色,可以访问项目空间内的所有对象、对用户或角色进行管理、对用户或角色进行授权。与项目空间 Owner 相比,admin 角色不能将 admin 权限指派给用户,不能设定项目空间的安全配置,不能修改项目空间的鉴权模型,admin 角色所对应的权限不能被修改。一般情况下,如未修改过权限,一般情况下admin角色用户只有一个为project owner账号。
odps@ clouder_bi>describe role admin;[users]ALIYUN$***@aliyun-test.comAuthorization Type: Admin复制代码

MaxCompute project owner可以将admin角色授予其他子账号,用于进行MaxCompute底层的权限模型管理。

  • role_开头的角色也可以通过describe role 方式查看其角色所具备的权限点及角色里的用户列表。以开发者角色为例:
odps@ clouder_bi>describe role role_project_dev;[users]RAM$yangyi.pt@aliyun-test.com:yangyitestAuthorization Type: PolicyA    projects/clouder_bi: *A    projects/clouder_bi/instances/*: *A    projects/clouder_bi/jobs/*: *A    projects/clouder_bi/offlinemodels/*: *A    projects/clouder_bi/packages/*: *A    projects/clouder_bi/registration/functions/*: *A    projects/clouder_bi/resources/*: *A    projects/clouder_bi/tables/*: *A    projects/clouder_bi/volumes/*: *复制代码

排查问题建议:

在普及完两个产品的权限体系之外,更多的用户会遇到各种权限的疑问或者问题。通常可以通过如下方式来排查:

  • 首先,查看当前用户或指定用户所拥有的权限。
show grants; --查看当前用户自己的访问权限show grants for 
; --查看指定用户的访问权限,仅由ProjectOwner和Admin才能有执行权限 。show grants for RAM$主帐号:子帐号;复制代码

可以看到用户所具有的角色及相关权限点。

  • 查看指定对象的授权列表,一般获取表到人。
show acl for 
[on type
];--查看指定对象上的用户和角色授权列表支持的objecTtype: PROJECT, TABLE, JOB, VOLUME, INSTANCE, RESOURCE, FUNCTION,PACKAGE,TOPOLOGY,MATRIX,XFLOW,OFFLINEMODEL,STREAMJOB复制代码

  • 查看ACL是否生效(常常发生在授权之后返回OK,但是权限校验还是失败)
show SecurityConfiguration;--查看项目空间的安全配置复制代码

除了通过命令行方式,也可以通过__

++DataWorks>项目管理>MaxCompute高级配置++
__里的ACL开关来确认是否打开。

Policy授权的查询

policy授权一般常见有两种,一个是项目级别的,一个是role级别的。

get policy;--获取项目级别的policy配置;get policy on role 
;--获取指定的role policy设置。复制代码

转载地址:http://bxtpl.baihongyu.com/

你可能感兴趣的文章
美国税局再遭攻击:原是偷来的社会安全号码作祟
查看>>
如何在Kali Linux中安装Google Chrome浏览器
查看>>
勒索软件防不胜防? 要先从了解它开始
查看>>
大数据精准医疗解读遗传密码 未来医疗健康的变革
查看>>
神经网络基础:七种网络单元,四种层连接方式
查看>>
2014末,Surface Pro 3叫好不叫座只是价格问题?
查看>>
Arimo利用Alluxio的内存能力提升深度学习模型的结果效率(Time-to-Result)
查看>>
代号“沙尘暴”:黑客剑指日本关键基础设施
查看>>
光纤光缆市场需求高于预期 我国将迎来流量经济
查看>>
晶科能源与森源电气签订300MW光伏组件供货协议
查看>>
中国电信发布转型升级战略:构建一横四纵生态圈
查看>>
全渠道的核心是渠道协同和数据整合
查看>>
“小会话,大学问” - 如何让聊天机器人读懂对话历史?| 论文访谈间 #03
查看>>
让问答更自然 - 基于拷贝和检索机制的自然答案生成系统研究 | 论文访谈间 #02...
查看>>
首航节能:光热行业刚起步 子公司处于亏损状态
查看>>
《PHP精粹:编写高效PHP代码》——第1章面向对象编程
查看>>
美国智能家居止步不前 原因是产品过于碎片化
查看>>
大数据到底是不是“算命”?技术大牛们这样说
查看>>
让智能家居产品操控更简单 快捷键来了
查看>>
《面向对象分析与设计》一3.2 参与者
查看>>