閱讀704 返回首頁    go 阿裏雲 go 技術社區[雲棲]


入門篇:關於函數計算角色策略的定義

阿裏雲函數計算是近期推出的一個無服務器的全托管的產品,使用者隻需編寫核心代碼並設置運行的條件,即可在函數計算以彈性、安全地運行。函數計算能自行維護服務器資源,網絡資源,以及消息分發和負載均衡等功能。
因為使用者需要把代碼部署在函數計算上運行,同時能invoke函數的方式有很多,可以通過APIGateway、Fcli、控製台以及OSS等各種事件源來觸發函數執行,與此同時,函數計算作為執行單元需要授權交叉訪問其他產品,眾多的調用和模煳的安全界定,讓大家在使用函數計算對角色的授權會感到困惑,其實簡單來說,就是函數計算能在什麼情況下訪問哪些資源或者操作,以及那些來源能invoke函數計算的執行,簡單按照使用方向來分如下兩層角色授權:
1、函數計算可以被授權訪問其他產品的操作權限?
2、那些事件源可以被授權來Invoke函數計算的執行?
這個是兩個層麵的授權,函數計算通過兩層授權來解決上麵兩個問題,第一個問題是Service的角色授權,第二個是Trigger角色的授權。

  • Service層的角色授權:****是解決函數計算可以申請訪問那些產品,在函數計算裏,角色的執行策略設置是設置在service這層,**注意:service下的函數都繼承該角色的執行策略。 ** 詳見圖解: service

解釋:在service上的角色的策略主要是授權給Service能去訪問(read、delete、write等)其他雲產品的權限,例如產品OSS、OTS、SLS等,注意的是,為了防止訪問策略設置過大而引起安全問題,在函數計算控製台上,關於Service層的執行策略,僅僅列出各個產品的ReadOnly的權限,如下圖:
2
如果使用者想獲取更多權限(write,delete等),可以在訪問控製(RAM)中對該角色進行授權,詳見訪問控製的角色管理,如下圖:
3

  • Trigger的角色授權:是解決授權給某個產品的事件源可以invoke函數計算來執行代碼, 授權的粒度是到產品,例如授權給OSS,OSS的多個事件源(Put,delete,copy等都可以invoke函數運行) trigger

解釋:當用戶建立一個trigger的時候,在配置事件源的時候,需要配置一個角色,當事件源被觸發的時候,使用該角色來執行函數,角色的授權是事件源產品本身,例如授權給OSS後,OSS的Put,Copy,Post等操作都可以通過這個角色invoke這個函數執行。
在控製台上操作界麵如下:
4

最後更新:2017-07-26 10:32:54

  上一篇:go  display:flex; 布局
  下一篇:go  配置nginx反向代理jira並實現https