練習 - 建立 Azure 自訂角色
在本單元中,您將在 Azure 中建立「虛擬機器操作員」的自訂角色,並將該角色指派給自己。
此練習為選擇性項目。 若要完成此練習,針對具有您帳戶「使用者存取系統管理員」或「擁有者」角色的 Azure 訂用帳戶,您需要其存取權。 如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶。
建立角色
在 Azure 中為新員工建立自訂角色。
使用具有其「使用者存取系統管理員」或「擁有者」角色的帳戶來登入 Azure 入口網站。
從右上方的功能表列中,選取 [Cloud Shell]。
選取 [Bash]。
執行下列命令,取得要用於自訂角色定義的訂用帳戶識別碼。 複製訂用帳戶識別碼。
az account list --output json | jq '.[] | .id, .name'
將 Code 鍵入 Cloud Shell。
將下列角色定義貼入至編輯器中。 這是我們在上一個單元中識別的角色定義。
{ "Name": "Virtual Machine Operator", "IsCustom": true, "Description": "Can monitor and restart virtual machines.", "Actions": [ "Microsoft.Storage/*/read", "Microsoft.Network/*/read", "Microsoft.Compute/*/read", "Microsoft.Compute/virtualMachines/start/action", "Microsoft.Compute/virtualMachines/restart/action", "Microsoft.Authorization/*/read", "Microsoft.ResourceHealth/availabilityStatuses/read", "Microsoft.Resources/subscriptions/resourceGroups/read", "Microsoft.Insights/alertRules/*", "Microsoft.Support/*" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/subscriptionId" ] }
在
AssignableScopes
區段中,以在上一個步驟中取得的值取代 subscriptionId。從 Cloud Shell 窗格右上方的三點功能表選取 [儲存] (或是在 Windows 中按 CTRL + S、在 macOS 中按 CMD + S)。
輸入 vm-operator-role.json 作為檔案名稱,並選取 [儲存]。
從 Cloud Shell 窗格右上方的三點功能表選取 [關閉編輯器] (或是在 Windows 中按 CTRL + Q、在 macOS 中按 CMD + Q)。
在 Cloud Shell 中執行下列命令來建立自訂角色:
az role definition create --role-definition vm-operator-role.json
指派角色
建立自訂角色後,您可以將其指派給使用者或群組。 為了簡化案例,請將自訂角色指派給自己。
執行下列命令以取得使用者主體名稱。 以出現在 Azure 入口網站設定檔卡片右上方的名稱,取代「您的顯示名稱」。 您的顯示名稱可能是您的名字和姓氏。
USER=$(az ad user list --display-name "your display name" --query [0].userPrincipalName --output tsv) echo $USER
執行下列命令將自訂角色指派給您自己,並將「您的訂用帳戶識別碼」取代為您先前所處理的訂用帳戶識別碼:
az role assignment create --assignee $USER --role "Virtual Machine Operator" --scope /subscriptions/"your subscription id"
關閉 Cloud Shell。