管理Azure 自動化中的角色許可權和安全性

Azure 角色型存取控制 (Azure RBAC) 會啟用 Azure 資源的存取管理。 使用 Azure RBAC ,您可以隔離小組內的職責,並只授與他們執行其工作所需的使用者、群組和應用程式存取權數量。 您可以使用 Azure 入口網站、Azure 命令列工具或 Azure 管理 API,將角色型存取權授與使用者。

自動化帳戶中的角色

在Azure 自動化中,透過將適當的 Azure 角色指派給自動化帳戶範圍中的使用者、群組和應用程式,授與存取權。 以下是自動化帳戶支援的內建角色:

角色 說明
負責人 擁有者角色允許存取自動化帳戶內的所有資源和動作,包括提供對其他使用者、群組和應用程式的存取權來管理自動化帳戶。
參與者 參與者角色可讓您管理所有專案,但修改其他使用者對自動化帳戶的存取權限除外。
讀取者 讀取者角色可讓您檢視自動化帳戶中的所有資源,但無法進行任何更改。
自動化參與者 自動化參與者角色允許您管理自動化帳戶中的所有資源,但修改其他使用者對自動化帳戶的存取權限除外。
自動化操作員 自動化操作員角色可讓您檢視 Runbook 名稱和屬性,以及建立和管理自動化帳戶中所有 Runbook 的作業。 如果您想要保護自動化帳戶資源 (例如:認證資產和 Runbook) 不被檢視或修改,但仍允許組織成員執行這些 Runbook,此角色會很實用。
自動化作業操作員 自動化作業操作員角色可讓您為自動化帳戶中的所有 Runbook 建立和管理作業。
自動化 Runbook 操作員 自動化 Runbook 操作員角色可讓您檢視 Runbook 的名稱和屬性。
Log Analytics 參與者 Log Analytics 參與者角色可讓您讀取所有監視資料和編輯監視設定。 編輯監視設定包括將 VM 擴充功能新增至 VM、讀取儲存體帳戶金鑰以便能設定 Azure 儲存體中的收集記錄檔、建立和設定自動化帳戶、新增 Azure 自動化功能,以及在所有 Azure 資源上設定 Azure 診斷。
Log Analytics 讀者 Log Analytics 讀取者角色讓您可以檢視和搜尋所有監視資料以及檢視監視設定。 這包括檢視所有 Azure 資源上的 Azure 診斷設定。
監視參與者 監視參與者角色可讓您讀取所有監視資料和更新監視設定。
監視讀取器 監視讀取者角色可讓您讀取所有監視資料。
使用者存取系統管理員 使用者存取管理員角色可讓您管理 Azure 自動化帳戶的使用者存取權。

角色權限

下表描述提供給每個角色的特定許可權。 這可以包括賦予權限的動作和限制權限的非動作。

負責人

擁有者可以管理所有內容,包括存取權限。 下表顯示授與角色的權限:

動作​​ 描述
Microsoft.Automation/automationAccounts/* 建立和管理所有類型的資源。

參與者

參與者可以管理除了存取權限之外的所有內容。 下表顯示角色已授與和拒絕的權限:

動作 說明
Microsoft.Automation/automationAccounts/* 建立和管理所有類型的資源
非動作
Microsoft.Authorization/*/Delete 刪除角色和角色指派。
Microsoft.Authorization/*/Write 建立角色和角色指派。
Microsoft.Authorization/elevateAccess/Action 拒絕建立使用者存取管理員的能力。

讀取者

注意

我們最近已變更自動化帳戶的內建讀取者角色許可權。 深入了解

讀者可以檢視自動化帳戶中的所有資源,但無法進行任何更改。

動作 說明
Microsoft.Automation/automationAccounts/read 檢視自動化帳戶中的所有資源。

自動化參與者

自動化參與者可以管理自動化帳戶中除了存取權限以外的所有資源。 下表顯示授與角色的權限:

動作 說明
Microsoft.Automation /automationAccounts/* 建立和管理所有類型的資源。
Microsoft.Authorization/*/read 讀取角色和角色指派。
Microsoft.Resources/deployments/* 建立和管理資源群組部署。
Microsoft.Resources/subscriptions/resourceGroups/read 讀取資源群組部署。
Microsoft.Support/* 建立和管理支援票證。
Microsoft.Insights/ActionGroups/* 讀取/寫入/刪除動作群組。
Microsoft.Insights/ActivityLogAlerts/* 讀取/寫入/刪除活動記錄警示。
Microsoft.Insights/diagnosticSettings/* 讀取/寫入/刪除診斷設定。
Microsoft.Insights/MetricAlerts/* 讀取/寫入/刪除近即時計量警示。
Microsoft.Insights/ScheduledQueryRules/* 讀取/寫入/刪除 Azure 監視器中的記錄警示。
Microsoft.OperationalInsights/workspaces/sharedKeys/action 列出 Log Analytics 工作區的金鑰

注意

如果目標資源上設定了適當的許可權,或使用執行身分帳戶,可以使用自動化參與者角色來存取任何資源。 根據預設,自動化執行身分帳戶會設定訂用帳戶的參與者許可權。 請遵循最低權限的原則,並小心地僅指派執行 Runbook 所需的權限。 例如,如果只需要自動化帳戶才能啟動或停止 Azure VM,則指派給執行身分帳戶或受控識別的權限必須僅用於啟動或停止 VM。 同樣地,如果 Runbook 正在從 Blob 儲存體讀取,請指派唯讀權限。

指派權限時,建議使用指派給受控識別的 Azure 角色型存取控制 (RBAC)。 檢閱使用系統或使用者指派的受控識別的最佳做法建議,包括在其存留時間內的管理與治理。

自動化操作員

自動化操作員能夠建立和管理作業,以及讀取自動化帳戶中所有 Runbook 的 Runbook 名稱和屬性。

注意

如果您想要控制操作員對個別 Runbook 的存取權,則請勿設定此角色。 請改用 自動化作業操作員和 自動化 Runbook 操作員 角色組合。

下表顯示授與角色的權限:

動作 說明
Microsoft.Authorization/*/read 讀取授權。
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/read 讀取混合式 Runbook 背景工作角色資源。
Microsoft.Automation/automationAccounts/jobs/read 列出 Runbook 的作業。
Microsoft.Automation/automationAccounts/jobs/resume/action 繼續暫停的工作。
Microsoft.Automation/automationAccounts/jobs/stop/action 取消進行中的作業。
Microsoft.Automation/automationAccounts/jobs/streams/read 讀取作業資料流程和輸出。
Microsoft.Automation/automationAccounts/jobs/output/read 取得作業的輸出。
Microsoft.Automation/automationAccounts/jobs/suspend/action 暫停正在進行的作業。
Microsoft.Automation/automationAccounts/jobs/write 建立作業。
Microsoft.Automation/automationAccounts/jobSchedules/read 取得 Azure 自動化作業排程。
Microsoft.Automation/automationAccounts/jobSchedules/write 建立 Azure 自動化作業排程。
Microsoft.Automation/automationAccounts/linkedWorkspace/read 取得連結至自動化帳戶的工作區。
Microsoft.Automation/automationAccounts/read 取得 Azure 自動化帳戶。
Microsoft.Automation/automationAccounts/runbooks/read 取得 Azure 自動化 Runbook。
Microsoft.Automation/automationAccounts/schedules/read 取得 Azure 自動化排程資產。
Microsoft.Automation/automationAccounts/schedules/write 建立或更新 Azure 自動化排程資產。
Microsoft.Resources/subscriptions/resourceGroups/read 讀取角色和角色指派。
Microsoft.Resources/deployments/* 建立和管理資源群組部署。
Microsoft.Insights/alertRules/* 建立和管理警示規則。
Microsoft.Support/* 建立和管理支援票證。
Microsoft.ResourceHealth /availabilityStatuses/read 取得指定範圍中所有資源的可用性狀態。

自動化作業操作員

自動化作業操作員角色是在自動化帳戶範圍內授與的。 這可讓操作員權限為帳戶中的所有 Runbook 建立和管理作業。 如果作業操作員角色在包含自動化帳戶的資源群組上被授與讀取權限,該角色的成員就能夠啟動 Runbook。 不過,他們無法建立、編輯或刪除它們。

下表顯示授與角色的權限:

動作 說明
Microsoft.Authorization/*/read 讀取授權。
Microsoft.Automation/automationAccounts/jobs/read 列出 Runbook 的作業。
Microsoft.Automation/automationAccounts/jobs/resume/action 繼續暫停的工作。
Microsoft.Automation/automationAccounts/jobs/stop/action 取消進行中的作業。
Microsoft.Automation/automationAccounts/jobs/streams/read 讀取作業資料流程和輸出。
Microsoft.Automation/automationAccounts/jobs/suspend/action 暫停正在進行的作業。
Microsoft.Automation/automationAccounts/jobs/write 建立作業。
Microsoft.Resources/subscriptions/resourceGroups/read 讀取角色和角色指派。
Microsoft.Resources/deployments/* 建立和管理資源群組部署。
Microsoft.Insights/alertRules/* 建立和管理警示規則。
Microsoft.Support/* 建立和管理支援票證。
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/read 讀取混合式 Runbook 背景工作角色群組。
Microsoft.Automation/automationAccounts/jobs/output/read 取得作業的輸出。

自動化 Runbook 操作員

自動化 Runbook 操作員角色是在 Runbook 範圍內授與的。 自動化 Runbook 操作員可以檢視 Runbook 的名稱和屬性。 這個角色與 自動化作業操作員 角色結合,可讓操作員也建立及管理 Runbook 的作業。 下表顯示授與角色的權限:

動作 說明
Microsoft.Automation/automationAccounts/runbooks/read 列出 Runbook。
Microsoft.Authorization/*/read 讀取授權。
Microsoft.Resources/subscriptions/resourceGroups/read 讀取角色和角色指派。
Microsoft.Resources/deployments/* 建立和管理資源群組部署。
Microsoft.Insights/alertRules/* 建立和管理警示規則。
Microsoft.Support/* 建立和管理支援票證。

Log Analytics 參與者

Log Analytics 參與者可以讀取所有監視資料並編輯監視設定。 編輯監視設定包括將 VM 擴充功能新增至 VM、讀取儲存體帳戶金鑰以便能設定 Azure 儲存體中的收集記錄檔、建立和設定自動化帳戶、新增功能,以及在所有 Azure 資源上設定 Azure 診斷。 下表顯示授與角色的權限:

動作 說明
*/read 讀取除了秘密以外的所有類型的資源。
Microsoft.ClassicCompute/virtualMachines/extensions/* 建立和管理虛擬機器擴充功能。
Microsoft.ClassicStorage/storageAccounts/listKeys/action 列出傳統儲存體帳戶金鑰。
Microsoft.Compute/virtualMachines/extensions/* 建立和管理傳統虛擬機器擴充功能。
Microsoft.Insights/alertRules/* 讀取/寫入/刪除警示規則。
Microsoft.Insights/diagnosticSettings/* 讀取/寫入/刪除診斷設定。
Microsoft.OperationalInsights/* 管理 Azure 監視器記錄。
Microsoft.OperationsManagement/* 管理工作區中的 Azure 自動化功能。
Microsoft.Resources/deployments/* 建立和管理資源群組部署。
Microsoft.Resources/subscriptions/resourcegroups/deployments/* 建立和管理資源群組部署。
Microsoft.Storage/storageAccounts/listKeys/action 列出儲存體帳戶金鑰。
Microsoft.Support/* 建立和管理支援票證。
Microsoft.HybridCompute/machines/extensions/write 安裝或更新 Azure Arc 延伸模組。

Log Analytics 讀者

Log Analytics 讀者可以檢視和搜尋所有監視資料,以及檢視監視設定,包括檢視所有 Azure 資源的 Azure 診斷設定。 下表顯示角色已授與或拒絕的權限:

動作 說明
*/read 讀取除了秘密以外的所有類型的資源。
Microsoft.OperationalInsights/workspaces/analytics/query/action 管理 Azure 監視器記錄中的查詢。
Microsoft.OperationalInsights/workspaces/search/action 搜尋 Azure 監視器記錄資料。
Microsoft.Support/* 建立和管理支援票證。
非動作
Microsoft.OperationalInsights/workspaces/sharedKeys/read 無法讀取共用存取金鑰。

監視參與者

監視參與者可讀取所有監視資料及更新監視設定。 下表顯示授與角色的權限:

動作 說明
*/read 讀取除了秘密以外的所有類型的資源。
Microsoft.AlertsManagement/alerts/* 管理「警示」。
Microsoft.AlertsManagement/alertsSummary/* 管理警示儀表板。
Microsoft.Insights/AlertRules/* 管理警示規則。
Microsoft.Insights/components/* 管理 Application Insights 元件。
Microsoft.Insights/DiagnosticSettings/* 管理診斷設定。
Microsoft.Insights/eventtypes/* 列出訂用帳戶中的活動記錄事件 (管理事件)。 此權限同時適用於活動記錄的程式設計和入口網站存取。
Microsoft.Insights/LogDefinitions/* 需要透過入口網站存取活動記錄的使用者,需要此權限。 列出活動記錄中的記錄類別。
Microsoft.Insights/MetricDefinitions/* 讀取計量定義 (資源的可用指標類型清單)。
Microsoft.Insights/Metrics/* 讀取資源的計量。
Microsoft.Insights/Register/Action 註冊 Microsoft.Insights 提供者。
Microsoft.Insights/webtests/* 管理 Application Insights Web 測試。
Microsoft.OperationalInsights/workspaces/intelligencepacks/* 管理 Azure 監視器記錄解決方案套件。
Microsoft.OperationalInsights/workspaces/savedSearches/* 管理儲存的 Azure 監視器記錄搜尋。
Microsoft.OperationalInsights/workspaces/search/action 搜尋 Log Analytics 工作區。
Microsoft.OperationalInsights/workspaces/sharedKeys/action 列出 Log Analytics 工作區的金鑰。
Microsoft.OperationalInsights/workspaces/storageinsightconfigs/* 管理 Azure 監視器記錄儲存體深入解析設定。
Microsoft.Support/* 建立和管理支援票證。
Microsoft.WorkloadMonitor/workloads/* 管理工作負載。

監視讀取器

監視讀取器可以讀取所有監視資料。 下表顯示授與角色的權限:

動作 說明
*/read 讀取除了秘密以外的所有類型的資源。
Microsoft.OperationalInsights/workspaces/search/action 搜尋 Log Analytics 工作區。
Microsoft.Support/* 建立和管理支援票證

使用者存取系統管理員

使用者存取系統管理員可以管理使用者對 Azure 資源的存取權。 下表顯示授與角色的權限:

動作 說明
*/read 閱讀所有資源
Microsoft.Authorization/* 管理授權
Microsoft.Support/* 建立和管理支援票證

讀取者角色存取權限

重要

為了加強整體Azure 自動化安全性狀態,內建的 RBAC 讀取器將無法透過 API 呼叫存取自動化帳戶金鑰 - GET /AUTOMATIONACCOUNTS/AGENTREGISTRATIONINFORMATION

自動化帳戶的內建讀取者角色無法使用 API – GET /AUTOMATIONACCOUNTS/AGENTREGISTRATIONINFORMATION 來擷取自動化帳戶金鑰。 這是一項提供敏感性資訊的高權限作業,可能會帶來安全風險,即低權限的惡意執行者可以存取自動化帳戶金鑰,並可以執行較高權限級別的動作。

若要存取 API – GET /AUTOMATIONACCOUNTS/AGENTREGISTRATIONINFORMATION ,建議您切換至內建角色,例如擁有者、參與者或自動化參與者,以存取自動化帳戶金鑰。 根據預設,這些角色會有 listKeys 許可權。 最佳做法是,建議您建立具有有限權限的自訂角色,以存取自動化帳戶金鑰。 針對自訂角色,您必須將許可權新增 Microsoft.Automation/automationAccounts/listKeys/action 至角色定義。 深入瞭解 如何從Azure 入口網站建立自訂角色。

功能設定許可權

下列各節說明啟用更新管理和變更追蹤和清查功能所需的最低必要許可權。

從 VM 啟用更新管理和變更追蹤和清查的許可權

動作 權限 最小範圍
撰寫新的部署 Microsoft.Resources/deployments/* 訂用帳戶
撰寫新的資源群組 Microsoft.Resources/subscriptions/resourceGroups/write 訂用帳戶
建立新的預設工作區 Microsoft.OperationalInsights/workspaces/write 資源群組
建立新的帳戶 Microsoft.Automation/automationAccounts/write 資源群組
連結工作區和帳戶 Microsoft.OperationalInsights/workspaces/write
Microsoft.Automation/automationAccounts/read
工作區
自動化帳戶
建立 MMA 擴充功能 Microsoft.Compute/virtualMachines/delete 虛擬機器
建立已儲存的搜尋 Microsoft.OperationalInsights/workspaces/write 工作區
建立範圍設定 Microsoft.OperationalInsights/workspaces/write 工作區
上線狀態檢查 - 讀取工作區 Microsoft.OperationalInsights/workspaces/read 工作區
上線狀態檢查 - 讀取帳戶的連結工作區屬性 Microsoft.Automation/automationAccounts/read 自動化帳戶
上線狀態檢查 - 讀取解決方案 Microsoft.OperationalInsights/workspaces/intelligencepacks/read 解決方案
上線狀態檢查 - 讀取 VM Microsoft.Compute/virtualMachines/read 虛擬機器
上線狀態檢查 - 讀取帳戶 Microsoft.Automation/automationAccounts/read 自動化帳戶
VM 1 的上線工作區檢查 Microsoft.OperationalInsights/workspaces/read 訂用帳戶
註冊 Log Analytics 提供者 Microsoft.Insights/register/action 訂用帳戶

1 需要此許可權,才能透過 VM 入口網站體驗啟用功能。

從自動化帳戶啟用更新管理和變更追蹤和清查的許可權

動作 權限 最小範圍
建立新的部署 Microsoft.Resources/deployments/* 訂用帳戶
建立新資源群組 Microsoft.Resources/subscriptions/resourceGroups/write 訂用帳戶
AutomationOnboarding 刀鋒視窗 - 建立新的工作區 Microsoft.OperationalInsights/workspaces/write 資源群組
AutomationOnboarding 刀鋒視窗 - 讀取連結工作區 Microsoft.Automation/automationAccounts/read 自動化帳戶
AutomationOnboarding 刀鋒視窗 - 讀取解決方案 Microsoft.OperationalInsights/workspaces/intelligencepacks/read 解決方案
AutomationOnboarding 刀鋒視窗 - 讀取工作區 Microsoft.OperationalInsights/workspaces/intelligencepacks/read 工作區
建立工作區和帳戶的連結 Microsoft.OperationalInsights/workspaces/write 工作區
寫鞋盒的帳戶 Microsoft.Automation/automationAccounts/write 客戶
建立/編輯已儲存的搜尋 Microsoft.OperationalInsights/workspaces/write 工作區
建立/編輯範圍設定 Microsoft.OperationalInsights/workspaces/write 工作區
註冊 Log Analytics 提供者 Microsoft.Insights/register/action 訂用帳戶
步驟 2 - 啟用多個 VM
VMOnboarding 刀鋒視窗 - 建立 MMA 擴充功能 Microsoft.Compute/virtualMachines/delete 虛擬機器
建立/編輯已儲存的搜尋 Microsoft.OperationalInsights/workspaces/write 工作區
建立/編輯範圍設定 Microsoft.OperationalInsights/workspaces/write 工作區

管理混合式背景工作角色群組和混合式背景工作角色的角色許可權

您可以在自動化中建立 Azure 自訂角色 ,並將下列許可權授與混合式背景工作角色群組和混合式背景工作角色:

更新管理許可權

「更新管理」可用來在相同 Microsoft Entra 租用戶的多個訂用帳戶中,或使用 Azure Lighthouse 跨租用戶評估及排程機器的更新部署。 下表列出管理更新部署所需的許可權。

資源 角色 範圍
自動化帳戶 虛擬機器參與者 帳戶的資源群組
Log Analytics 工作區 Log Analytics 參與者 Log Analytics 工作區
Log Analytics 工作區 Log Analytics 讀者 訂用帳戶
解決方案 Log Analytics 參與者 解決方案
虛擬機器 虛擬機器參與者 虛擬機器
虛擬機器上的動作
檢視更新排程執行的歷程記錄 ( 軟體更新設定機器執行 讀取者 自動化帳戶
虛擬機器上的動作 權限
建立更新排程 ( 軟體更新組態 Microsoft.Compute/virtualMachines/delete 針對靜態 VM 清單和資源群組
建立更新排程 ( 軟體更新組態 Microsoft.OperationalInsights/workspaces/analytics/query/action 針對使用非 Azure 動態清單時的工作區資源識別碼。

注意

當您使用更新管理時,請確定腳本的執行原則為 RemoteSigned

設定自動化帳戶的 Azure RBAC

下一節說明如何透過 Azure 入口網站 PowerShell 在自動化帳戶上設定 Azure RBAC。

使用 Azure 入口網站 設定 Azure RBAC

  1. 登入Azure 入口網站,並從 [自動化帳戶] 頁面開啟您的自動化帳戶

  2. 選取 [存取控制][IAM], 然後從可用角色清單中選取角色。 您可以選擇自動化帳戶支援的任何可用內建角色,或您可能已定義的任何自訂角色。 將角色指派給您想要授與許可權的使用者。

    如需詳細步驟,請參閱使用 Azure 入口網站指派 Azure 角色

    注意

    您只能在自動化帳戶範圍設定角色型存取控制,而不能在自動化帳戶下方的任何資源設定角色型存取控制。

從使用者移除角色指派

您可以移除未管理自動化帳戶的使用者,或不再為組織工作的使用者存取權限。 下列步驟示範如何從使用者移除角色指派。 如需詳細步驟,請參閱 移除 Azure 角色指派

  1. 在您想要移除存取權的範圍中開啟 存取控制 (IAM), 例如管理群組、訂用帳戶、資源群組或資源。

  2. 選取 [ 角色指派] 索引 標籤,以檢視此範圍的所有角色指派。

  3. 在角色指派清單中,新增使用者旁邊的核取記號,其中包含您要移除的角色指派。

  4. 選取移除

    Remove users

使用 PowerShell 設定 Azure RBAC

您也可以使用下列 Azure PowerShell Cmdlet 來設定自動化帳戶的角色型存取:

Get-AzRoleDefinition 會列出 Microsoft Entra ID 中可用的所有 Azure 角色。 您可以使用這個 Cmdlet 搭配 Name 參數來列出特定角色可執行檔所有動作。

Get-AzRoleDefinition -Name 'Automation Operator'

以下是範例輸出:

Name             : Automation Operator
Id               : d3881f73-407a-4167-8283-e981cbba0404
IsCustom         : False
Description      : Automation Operators are able to start, stop, suspend, and resume jobs
Actions          : {Microsoft.Authorization/*/read, Microsoft.Automation/automationAccounts/jobs/read, Microsoft.Automation/automationAccounts/jobs/resume/action,
                   Microsoft.Automation/automationAccounts/jobs/stop/action...}
NotActions       : {}
AssignableScopes : {/}

Get-AzRoleAssignment 會列出指定範圍中的 Azure 角色指派。 如果沒有任何參數,此 Cmdlet 會傳回訂用帳戶下所做的所有角色指派。 ExpandPrincipalGroups使用 參數來列出指定使用者的存取指派,以及使用者所屬的群組。

範例: 使用下列 Cmdlet 列出自動化帳戶中的所有使用者及其角色。

Get-AzRoleAssignment -Scope '/subscriptions/<SubscriptionID>/resourcegroups/<Resource Group Name>/Providers/Microsoft.Automation/automationAccounts/<Automation account name>'

以下是範例輸出:

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Automation/automationAccounts/myAutomationAccount/provid
                     ers/Microsoft.Authorization/roleAssignments/cc594d39-ac10-46c4-9505-f182a355c41f
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Automation/automationAccounts/myAutomationAccount
DisplayName        : admin@contoso.com
SignInName         : admin@contoso.com
RoleDefinitionName : Automation Operator
RoleDefinitionId   : d3881f73-407a-4167-8283-e981cbba0404
ObjectId           : 15f26a47-812d-489a-8197-3d4853558347
ObjectType         : User

使用 New-AzRoleAssignment 將存取權指派給特定範圍的使用者、群組和應用程式。

範例: 使用下列命令為自動化帳戶範圍中的使用者指派「自動化操作員」角色。

New-AzRoleAssignment -SignInName <sign-in Id of a user you wish to grant access> -RoleDefinitionName 'Automation operator' -Scope '/subscriptions/<SubscriptionID>/resourcegroups/<Resource Group Name>/Providers/Microsoft.Automation/automationAccounts/<Automation account name>'

以下是範例輸出:

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/Providers/Microsoft.Automation/automationAccounts/myAutomationAccount/provid
                     ers/Microsoft.Authorization/roleAssignments/25377770-561e-4496-8b4f-7cba1d6fa346
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/Providers/Microsoft.Automation/automationAccounts/myAutomationAccount
DisplayName        : admin@contoso.com
SignInName         : admin@contoso.com
RoleDefinitionName : Automation Operator
RoleDefinitionId   : d3881f73-407a-4167-8283-e981cbba0404
ObjectId           : f5ecbe87-1181-43d2-88d5-a8f5e9d8014e
ObjectType         : User

使用 Remove-AzRoleAssignment 從特定範圍移除指定使用者、群組或應用程式的存取權。

範例: 使用下列命令,從自動化帳戶範圍中的自動化操作員角色中移除使用者。

Remove-AzRoleAssignment -SignInName <sign-in Id of a user you wish to remove> -RoleDefinitionName 'Automation Operator' -Scope '/subscriptions/<SubscriptionID>/resourcegroups/<Resource Group Name>/Providers/Microsoft.Automation/automationAccounts/<Automation account name>'

在上述範例中,將 、 SubscriptionIDResource Group NameAutomation account name 取代 sign-in ID of a user you wish to remove 為您的帳戶詳細資料。 當系統提示您確認之前,請先選擇 [是 ],再繼續移除使用者角色指派。

自動化操作員角色的使用者體驗 - 自動化帳戶

在自動化帳戶範圍上指派給自動化操作員角色的使用者檢視獲指派的自動化帳戶時,使用者只能檢視在自動化帳戶中建立的 Runbook、Runbook 作業和排程清單。 此使用者無法檢視這些專案的定義。 使用者可以啟動、停止、暫停、繼續或排程 Runbook 作業。 不過,使用者無法存取其他自動化資源,例如設定、混合式 Runbook 背景工作角色群組或 DSC 節點。

No access to resources

設定 Runbook 的 Azure RBAC

Azure 自動化可讓您將 Azure 角色指派給特定的 Runbook。 若要這樣做,請執行下列腳本,將使用者新增至特定的 Runbook。 自動化帳戶管理員istrator 或 Tenant 管理員istrator 可以執行此腳本。

$rgName = "<Resource Group Name>" # Resource Group name for the Automation account
$automationAccountName ="<Automation account name>" # Name of the Automation account
$rbName = "<Name of Runbook>" # Name of the runbook
$userId = "<User ObjectId>" # Azure Active Directory (AAD) user's ObjectId from the directory

# Gets the Automation account resource
$aa = Get-AzResource -ResourceGroupName $rgName -ResourceType "Microsoft.Automation/automationAccounts" -ResourceName $automationAccountName

# Get the Runbook resource
$rb = Get-AzResource -ResourceGroupName $rgName -ResourceType "Microsoft.Automation/automationAccounts/runbooks" -ResourceName "$rbName"

# The Automation Job Operator role only needs to be run once per user.
New-AzRoleAssignment -ObjectId $userId -RoleDefinitionName "Automation Job Operator" -Scope $aa.ResourceId

# Adds the user to the Automation Runbook Operator role to the Runbook scope
New-AzRoleAssignment -ObjectId $userId -RoleDefinitionName "Automation Runbook Operator" -Scope $rb.ResourceId

執行腳本之後,讓使用者登入Azure 入口網站,然後選取 [ 所有資源 ]。 在清單中,使用者可以看到他/她已新增為自動化 Runbook 操作員的 Runbook。

Runbook Azure RBAC in the portal

自動化操作員角色的使用者體驗 - Runbook

當指派給 Runbook 範圍上自動化操作員角色的使用者檢視指派的 Runbook 時,使用者只能啟動 Runbook 並檢視 Runbook 作業。

Only has access to start

下一步