Application Insights 中的資源、角色及存取控制

您可以使用 Azure 角色型存取控制(Azure RBAC) 來控制誰具有 Application Insights 中 資料的讀取和更新存取權。

重要

將存取權指派給應用程式資源所屬的資源群組或訂用帳戶,而不是資源本身。 指派 Application Insights 元件參與者角色。 此角色可確保統一控制 Web 測試和警示的存取權,以及您的應用程式資源。 深入了解

注意

建議您使用 Azure Az PowerShell 模組來與 Azure 互動。 請參閱安裝 Azure PowerShell 以開始使用。 若要了解如何遷移至 Az PowerShell 模組,請參閱將 Azure PowerShell 從 AzureRM 遷移至 Az

資源、群組和訂用帳戶

首先,讓我們定義一些詞彙:

  • 資源 :Azure 服務的實例。 Application Insights 資源會收集、分析及顯示從應用程式傳送的遙測資料。 其他類型的 Azure 資源包括 Web 應用程式、資料庫和 VM。

    若要查看您的資源,請開啟 Azure 入口網站 、登入,然後選取 [ 所有資源 ]。 若要尋找資源,請在篩選欄位中輸入其名稱的一部分。

    Screenshot that shows a list of Azure resources.

  • 資源群組 :每個資源都屬於一個群組。 群組是管理相關資源,特別是存取控制的便利方式。 例如,在一個資源群組中,您可以放置 Web 應用程式、用來監視應用程式的 Application Insights 資源,以及Azure 儲存體資源來保留匯出的資料。
  • 用帳戶:若要使用 Application Insights 或其他 Azure 資源,請登入 Azure 訂用帳戶。 每個資源群組都屬於一個 Azure 訂用帳戶,您可以在其中選擇您的價格套件。 如果是組織訂用帳戶,擁有者可以選擇成員及其存取權限。
  • Microsoft 帳戶 :您用來登入 Azure 訂用帳戶、Xbox Live、Outlook.com 和其他Microsoft 服務的使用者名稱和密碼。

控制資源群組中的存取權

除了您為應用程式建立的資源之外,警示和 Web 測試也有個別的隱藏資源。 它們會連結至與 Application Insights 資源相同的 資源群組 。 您可能也已將其他 Azure 服務放在該處,例如網站或儲存體。

提供其他使用者的存取權

您必須擁有訂用帳戶或資源群組的擁有者許可權。

使用者必須擁有 Microsoft 帳戶 或其 組織 Microsoft 帳戶 的存取權。 您可以提供個人存取權,也可以存取 Microsoft Entra ID 中定義的使用者群組。

移至資源群組或直接移至資源本身

將參與者角色指派給 Azure RBAC。

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

選取角色

如果適用,連結會連線到相關聯的官方參考檔。

角色 在資源群組中
負責人 可以變更任何專案,包括使用者存取權。
參與者 可以編輯任何專案,包括所有資源。
Application Insights 元件參與者 可以編輯 Application Insights 資源。
讀取者 可以檢視但無法變更任何專案。
Application Insights 快照偵錯工具 授與使用者使用 Application Insights 快照偵錯工具功能的許可權。 此角色不包含在擁有者或參與者角色中。
Azure 服務部署發行管理參與者 透過 Azure 服務部署部署的服務參與者角色。
資料清除器 清除個人資料的特殊角色。 如需詳細資訊,請參閱 在 Log Analytics 和 Application Insights 中管理個人資料。
Azure ExpressRoute 系統管理員 可以建立、刪除及管理快速路由。
Log Analytics 參與者 Log Analytics 參與者可以讀取所有監視資料並編輯監視設定。 編輯監視設定包括將 VM 擴充功能新增至 VM、讀取儲存體帳戶金鑰,以設定從Azure 儲存體收集記錄、建立和設定自動化帳戶、新增解決方案,以及在所有 Azure 資源上設定 Azure 診斷。 如果您在設定 Azure 診斷時遇到問題,請參閱 Azure 診斷
Log Analytics 讀取器 Log Analytics 讀者可以檢視和搜尋所有監視資料,以及檢視監視設定,包括檢視所有 Azure 資源的 Azure 診斷設定。 如果您在設定 Azure 診斷時遇到問題,請參閱 Azure 診斷
masterreader 允許使用者檢視所有專案,但不進行變更。
監視參與者 可讀取所有監視資料及更新監視設定。
監視計量發行者 針對 Azure 資源啟用發佈計量。
監視讀取器 可讀取所有監視資料。
資源原則參與者 (預覽) 從Enterprise 合約回填的使用者,具有建立/修改資源原則的許可權、建立支援票證,以及讀取資源/階層的許可權。
使用者存取系統管理員 允許使用者管理其他使用者對 Azure 資源的存取權。
網站參與者 可讓您管理網站(而非 Web 方案),但無法存取它們。

編輯包括建立、刪除和更新:

  • 資源
  • Web 測試
  • 警示
  • 連續匯出

選取使用者

如果您想要的使用者不在目錄中,您可以邀請具有 Microsoft 帳戶的任何人。 如果他們使用 Outlook.com、OneDrive、Windows 電話 或 Xbox Live 等服務,他們就會有 Microsoft 帳戶。

請參閱 Azure 角色型存取控制(Azure RBAC) 一文

用來判斷角色成員資格的 PowerShell 查詢

由於某些角色可以連結到通知和電子郵件警示,因此能夠產生屬於指定角色的使用者清單會很有説明。 為了協助產生這些類型的清單,您可以調整下列範例查詢以符合您的特定需求。

查詢整個訂用帳戶以取得管理員角色 + 參與者角色

(Get-AzRoleAssignment -IncludeClassicAdministrators | Where-Object {$_.RoleDefinitionName -in @('ServiceAdministrator', 'CoAdministrator', 'Owner', 'Contributor') } | Select -ExpandProperty SignInName | Sort-Object -Unique) -Join ", "

針對擁有者和參與者,查詢特定 Application Insights 資源的內容

$resourceGroup = "RGNAME"
$resourceName = "AppInsightsName"
$resourceType = "microsoft.insights/components"
(Get-AzRoleAssignment -ResourceGroup $resourceGroup -ResourceType $resourceType -ResourceName $resourceName | Where-Object {$_.RoleDefinitionName -in @('Owner', 'Contributor') } | Select -ExpandProperty SignInName | Sort-Object -Unique) -Join ", "

查詢擁有者和參與者的特定資源群組內容

$resourceGroup = "RGNAME"
(Get-AzRoleAssignment -ResourceGroup $resourceGroup | Where-Object {$_.RoleDefinitionName -in @('Owner', 'Contributor') } | Select -ExpandProperty SignInName | Sort-Object -Unique) -Join ", "