MaxCompute/DataWorks許可權問題排查建議
MaxCompute/DataWorks許可權問題排查建議
__前提:__MaxCompute與DataWorks為兩個產品,在許可權體系上既有交集又要一定的差別。在許可權問題之前需瞭解兩個產品獨特的許可權體系。
MaxCompute:計算引擎
MaxCompute底層計算引擎有自己的安全許可權體系,包括ACL、Policy授權體系。具體可以瞭解: https://help.aliyun.com/document_detail/27924.html
DataWorks:資料工場
DataWorks為MaxCompute上層的雲數倉開發工具,擁有自身的許可權模型外還支援底層MaxCompute底層資料授權體系。具體詳見: https://help.aliyun.com/document_detail/92594.html
檢視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.com Authorization 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:yangyitest Authorization Type: Policy A 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 <username>; --檢視指定使用者的訪問許可權,僅由ProjectOwner和Admin才能有執行許可權 。 show grants for RAM$主帳號:子帳號;
可以看到使用者所具有的角色及相關許可權點。
- 檢視指定物件的授權列表,一般獲取表到人。
show acl for <objectName> [on type <objectType>];--檢視指定物件上的使用者和角色授權列表 支援的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 <rolename>;--獲取指定的role policy設定。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31551794/viewspace-2286648/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL許可權問題MySql
- 記一次協助排查許可權問題的經歷
- android 許可權問題Android
- SQL Server許可權問題SQLServer
- moderator permission的許可權問題
- 認證/授權與許可權的問題
- Ubuntu 下 Composer 許可權問題Ubuntu
- vue許可權問題解決方案Vue
- hdfs檔案本地許可權問題
- Laravel Daily 日誌許可權問題LaravelAI
- Mysql資料庫許可權問題MySql資料庫
- ASM中磁碟組許可權問題ASM
- Win7最高許可權問題Win7
- linux檔案許可權問題Linux
- sqlserver 賦予許可權的問題SQLServer
- 各位高手,問下許可權上的問題
- DataWorks中MaxCompute的常用操作命令
- DRF內建許可權元件之自定義許可權管理類元件
- Laravel 框架的日誌許可權問題Laravel框架
- Laravel 日誌檔案許可權問題Laravel
- iOS10 許可權崩潰問題iOS
- hadoop命令報錯:許可權問題Hadoop
- Android許可權問題整理 非常全面Android
- ubuntu下解決wireshark許可權問題Ubuntu
- public_html的許可權問題(轉)HTML
- SQL Server 2000 許可權問題SQLServer
- Ubuntu共享資料夾訪問許可權問題Ubuntu訪問許可權
- 記一次 Laravel日誌許可權許可權問題(定時器導致)Laravel定時器
- 授權物件許可權後的授權者顯示問題物件
- 遇到問題,需要開發角色許可權模組
- 上傳APP到Google Play許可權問題APPGo
- 關於公司程式碼許可權的問題
- MySQL儲存過程的許可權問題MySql儲存過程
- 關於oracle檔案許可權的問題Oracle
- SQL Server2000 許可權問題SQLServer
- oracle 11g 操作ASM許可權問題OracleASM
- Grafana9的dashboard許可權問題Grafana
- 如何通過Dataworks禁止MaxCompute 子賬號跨Project訪問Project