MaxCompute studio与权限那些事儿
背景知識
MaxCompute擁有一套強大的安全體系,來保護項目空間里的數據安全。用戶在使用MaxCompute時,應理解權限的一些基本概念:
- 權限可分解為三要素,即主體(用戶賬號或角色),客體(表/資源/函數等),以及操作(與特定客體類型相關),詳細參考?https://help.aliyun.com/document_detail/27935.html。
- 授權有兩種方式:ACL(基于對象,grant語句)和Policy(基于策略,policy file)。
- 跨項目授權使用package:https://help.aliyun.com/document_detail/34602.html。
- 可通過列標簽實現表中列不同的訪問控制:https://help.aliyun.com/document_detail/34604.html。
- 為了方便用戶更好的理解與使用MaxCompute權限,studio實現了以下功能:
權限查看
用戶在project下有哪些權限,可通過show grants語句獲得。studio編輯器已集成權限相關的語句(https://help.aliyun.com/document_detail/27936.html)?通過快捷鍵(Windows: Ctrl + J , MAC: Command + J )喚出live template,然后搜索即可:
另外,studio對此也提供了圖形化的方式顯示用戶的權限。如下圖,點擊工具欄上的show privileges按鈕,彈出Show user privileges對話框,點擊search button, 下方就會顯示用戶在該project下的權限:
json標簽頁是所有權限的匯總,點擊table標簽頁,則顯示用戶在table上的權限。鼠標懸停在table標簽頁上,則提示table的權限說明:
權限異常診斷
當因缺少權限導致任務報鑒權失敗異常時,可通過studio的權限異常診斷,快速尋找解決方案。如下圖,點擊工具欄上的權限異常診斷按鈕,彈出權限異常診斷對話框,在上方文本框中輸入完整的鑒權異常信息,然后點擊ok按鈕,則下方文本框會顯示可能的解決方案:
權限語句編寫
MaxCompute提供了一系列的權限語句,studio SQL編輯器已集成這些語句,用戶可以利用studio來執行這些語句以完成相應的權限操作。具體的,通過快捷鍵(Windows: Ctrl + J , MAC: Command + J )喚出live template,然后搜索:
另外,在編寫授權語句過程中,也支持相應的代碼智能提示:
授權語句生成
除了手寫授權語句,studio也支持圖形化給用戶授權,點擊工具欄上的show privileges按鈕,彈出Show user privileges對話框,點擊Grant privilege標簽頁,選擇好授權對象,下方的SQL窗格就會同步顯示其對應的授權語句,然后點擊execute grant command,等待后臺完成即可。
studio中的權限
- 添加MaxCompute project時,studio會嘗試列舉project下的所有客體到本機,即用戶必須有project的list權限。
- 顯示表詳情時,用戶必須具備table的describe權限;顯示自定義函數,則必須具備function的read權限。在編輯器中編寫SQL,用到的table或function,則也必須有上述讀權限。
- 在編輯器中運行某條SQL,則必須具備SQL中表的select權限,同時還必須有project的CreateInstance權限以能提交SQL任務。
- 開發好了UDF,要想發布,則必須有function的write權限。
?
原文鏈接
本文為云棲社區原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的MaxCompute studio与权限那些事儿的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Objective-C中的associa
- 下一篇: 【实操手册】如何把一场直播录制下来?