1. 程式人生 > >Azure ARM (16) 基於角色的訪問控制 (Role Based Access Control, RBAC) - 使用默認的Role

Azure ARM (16) 基於角色的訪問控制 (Role Based Access Control, RBAC) - 使用默認的Role

not 問控制 https 所有 嘗試 介紹 admin ima 服務管理

  《Windows Azure Platform 系列文章目錄》

  今天上午剛剛和客戶溝通過,趁熱打鐵寫一篇Blog。

  熟悉Microsoft Azure平臺的讀者都知道,在老的Classic Portal裏面,我們可以設置共同管理員(Co-admin)。

  參考:Windows Azure Active Directory (3) China Azure AD增加新用戶

  技術分享

  但是Co-Admin和服務管理員(Service Admin)的權限是一樣的。

  比如上圖的admin創建的任何資源,是可以被newuser這個用戶刪除的。這樣不能進行權限控制。

  在新的Azure ARM Portal裏面,我們是可以根據不同的用戶,對資源組(Resource Group)設置基於角色的訪問控制 (Role Based Access Control, RBAC)

  在這裏筆者進行詳細的介紹。

  主要操作有:

  一.創建新的Azure AD Account

  二.創建Azure Resource, 並設置RBAC

  一.創建新的Azure AD Account

  1.我們以服務管理員身份(Admin),登錄Azure ARM Portal: https://portal.azure.cn

  2.點擊Azure Active Directory

  技術分享

  3.創建新的用戶,我們這裏設置賬戶名稱為:readonly。把下面的密碼保存在記事本中。下面登錄的時候要用到。

  技術分享

  4.創建完Azure AD賬戶以後,我們再創建一個Azure Resource Group,命名為LeiDemo-RG。圖略

  5.我們在LeiDemo-RG裏面,創建1個新的存儲賬戶,命名為leidemostorage。圖略。

  6.然後我們選擇LeiDemo-RG,點擊訪問控制,添加:

  技術分享

  

  7.角色這裏我要詳細的說明一下:

  技術分享

  (1)所有者(Owner)

  如果我把readonly這個賬戶設置為所有者,則readonly賬戶可以對LeiDemo-RG進行任何操作,包括刪除

  (2)參與者(Contributor)

  如果我把readonly這個賬戶設置為參與者,則readonly賬戶可以對LeiDemo-RG進行任何操作,但是不包括權限(Authorization)的刪除和寫入。

  (3)讀者(Reader)

  如果我把readonly這個賬戶設置為讀者,則readonly賬戶只能對LeiDemo-RG,進行只讀操作,但是無法讀取訪問秘鑰。

  有興趣的讀者可以參考微軟文檔:

  https://docs.microsoft.com/en-us/azure/active-directory/role-based-access-built-in-roles

  (1)所有者Owner

  技術分享

  允許的操作是*,表示可以執行任何操作

  

  (2)參與者Contributor

  技術分享

  允許的操作是Actions的操作,減去NotActions的操作。這個概念非常非常重要。

  允許的操作是Actions的操作,減去NotActions的操作。這個概念非常非常重要。

  允許的操作是Actions的操作,減去NotActions的操作。這個概念非常非常重要。

  所以上圖的操作是允許進行任何操作,但是不包括權限(Authorization)的刪除和寫入。

  (3)讀者(Reader)

  技術分享

  允許的的操作是進行只讀操作,但是無法讀取訪問秘鑰。

  8.我們首先把readonly賬戶,設置為參與者(Contributor)。

  技術分享

  

  9.保證admin登錄的瀏覽器(比如Chrome)不關閉。換另外一個瀏覽器(比如IE)。在IE中,以readonly賬戶登錄。

  10.我們以readonly賬戶登錄的IE瀏覽器裏,選擇資源組LeiDemo-RG,設置訪問控制。

  下圖中,我們可以看到,因為readonly賬戶設置為參與者(Contributor),所以允許進行任何操作,但是不包括權限(Authorization)的刪除和寫入。

  技術分享

  

  11.我們回到Chrome瀏覽器,以admin身份,把readonly設置為讀者(Reader)。圖略

  12.然後回到IE瀏覽器,按F5頁面刷新。這時候readonly的權限是讀者(Reader)。  

  我們在IE瀏覽器裏,以readonly身份,選擇資源leidemostorage,然後點擊刪除。

  技術分享

  請記住:我們在步驟11中,設置的readonly權限為讀者(Reader)。所有readonly權限為: 進行只讀操作,但是無法讀取訪問秘鑰。

  技術分享

  13.我們嘗試以readonly身份,刪除這個存儲賬戶:leidemostorage。會顯示刪除失敗:

  技術分享

  這個是可以理解的,因為讀者(Reader)的身份,只能進行只讀操作,但是無法讀取訪問秘鑰。

  總結:

  1.掌握如何在Azure AD中,創建新的Account

  2.了解RBAC中默認的三個角色:所有者(Owner),參與者(Contributor),讀者(Reader)

  

Azure ARM (16) 基於角色的訪問控制 (Role Based Access Control, RBAC) - 使用默認的Role