本文說明如何使用 Microsoft Entra 系統管理中心、Microsoft Graph PowerShell 或 Microsoft Graph API,列出您在 Microsoft Entra 標識符中指派的角色。
提示
本文中的步驟可能略有不同,具體取決於您從哪個入口網站展開作業。
列出我的角色指派
您也可以輕鬆列出自己的權限。 在 [角色和系統管理員] 頁面上,選取 [您的角色,以查看目前指派給您的角色。
列出使用者的角色指派
請遵循下列步驟,使用 Microsoft Entra 系統管理中心列出使用者的 Microsoft Entra 角色。 您的體驗會根據您是否已啟用 Microsoft Entra Privileged Identity Management (PIM) 而有所不同。
登入 Microsoft Entra 系統管理中心。
流覽至 身分識別>使用者>所有使用者。
選取 使用者名稱>指派的角色。
您可以在不同範圍看到指派給使用者的角色清單。 此外,您可以查看角色是否已直接指派或透過群組指派。
如果您擁有 Microsoft Entra ID P2 訂閱,您會看到 PIM 的使用體驗,其中包括合格、役中和過期的角色指派詳細資訊。
列出群組的角色指派
登入 Microsoft Entra 系統管理中心。
瀏覽至 [身分識別>群組]>[所有群組]。
選取可指派角色的群組。
若要判斷群組是否可指派角色,您可以檢視群組 屬性。
選取 指派的角色。
您現在可以看到分配給此群組的所有 Microsoft Entra 角色。 如果您沒有看到 [指派的角色] 選項,群組不是可指派角色的群組。
下載角色指派
若要下載所有角色的所有作用中角色指派,包括內建和自定義角色,請遵循下列步驟。
大量作業最多只能執行 1 小時,而且在大型租戶中存在限制。 如需詳細資訊,請參閱 大量作業 和 在 Microsoft Entra ID中大量建立使用者。
在 [角色和系統管理員] 頁面上,選取 [所有角色]。
選取 [下載指派]。
指定檔案名稱,然後選擇 開始下載。
這會下載 CSV 檔案,而此檔案列出所有角色在所有範圍的指派。
若要下載特定角色的角色指派,請遵循下列步驟。
在 [角色和系統管理員] 頁面上,選取角色。
選取 [下載指派]。
如果您有Microsoft Entra ID P2 授權,您會看到 PIM 體驗。 選取 匯出 來下載角色指派。
這會下載 CSV 檔案,其中列出該角色在所有範圍中的指派。
列出具有租用戶範圍的角色指派
此程序描述如何使用租用戶範圍列出角色指派。
登入 Microsoft Entra 系統管理中心。
瀏覽至 [身分識別]>[角色與系統管理員]>[角色與系統管理員]。
選擇角色名稱以開啟角色。 請勿在角色旁新增勾選。
選取 [指派],列出其角色指派。
在 [範圍] 欄中,查看具有 Directory 範圍的角色指派。
列出在應用程式註冊範圍內的角色指派
本節說明如何列出具有單一應用程式範圍的角色指派。
登入 Microsoft Entra 系統管理中心。
瀏覽至 [身分識別]>[應用程式]>[應用程式註冊]。
選取應用程式註冊來檢視角色指派清單。
您可能必須選取 [所有應用程式],才能查看 Microsoft Entra 組織中應用程式註冊的完整清單。
選取 角色與系統管理員。
選擇角色名稱來開啟角色。
選取 [指派],列出其角色指派。
應用程式註冊內會開啟指派頁面,顯示範圍設定為此 Microsoft Entra 資源的角色指派。
在 [範圍] 欄中,請查看具有 此資源 範圍的角色指派。
列出具有管理單位範圍的角色指派
您可以在 Microsoft Entra 系統管理中心 管理單位 區段中,檢視以管理單位範圍建立的所有角色指派。
登入 Microsoft Entra 系統管理中心。
瀏覽至 身分>角色 & 管理員>管理單位。
針對您想要檢視的角色指派清單,選取管理單位。
選取 角色與系統管理員。
選取角色名稱以開啟角色。
選取 [指派],列出其角色指派。
在 [範圍] 欄中,查看具有 [這個資源] 範圍的角色指派。
本節說明如何檢視在租用戶範圍內的角色指派。 本節使用 Microsoft Graph PowerShell 模組。
設定
使用 Install-Module安裝 Microsoft Graph 模組。
Install-Module -name Microsoft.Graph
使用 Connect-MgGraph 命令來登入並使用 Microsoft Graph PowerShell Cmdlet。
Connect-MgGraph
列出具有租戶範圍的角色分配
使用 Get-MgRoleManagementDirectoryRoleDefinition 和 Get-MgRoleManagementDirectoryRoleAssignment 命令來列出角色指派。
下列範例顯示如何列出群組管理員角色的角色指派。
# Get a specific directory role by ID
$role = Get-MgRoleManagementDirectoryRoleDefinition -UnifiedRoleDefinitionId fdd7a751-b60b-444a-984c-02652fe8fa1c
# Get role assignments for a given role definition
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '$($role.Id)'"
Id PrincipalId RoleDefinitionId DirectoryScopeId AppScop
eId
-- ----------- ---------------- ---------------- -------
lAPpYvVpN0KRkAEhdxReEH2Fs3EjKm1BvSKkcYVN2to-1 aaaaaaaa-bbbb-cccc-1111-222222222222 62e90394-69f5-4237-9190-012177145e10 /
lAPpYvVpN0KRkAEhdxReEMdXLf2tIs1ClhpzQPsutrQ-1 bbbbbbbb-cccc-dddd-2222-333333333333 62e90394-69f5-4237-9190-012177145e10 /
下列範例示範如何列出所有已啟用的角色指派,包括內建和自定義的角色。
$roles = Get-MgRoleManagementDirectoryRoleDefinition
foreach ($role in $roles)
{
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '$($role.Id)'"
}
Id PrincipalId RoleDefinitionId DirectoryScopeId AppScop
eId
-- ----------- ---------------- ---------------- -------
lAPpYvVpN0KRkAEhdxReEH2Fs3EjKm1BvSKkcYVN2to-1 aaaaaaaa-bbbb-cccc-1111-222222222222 62e90394-69f5-4237-9190-012177145e10 /
lAPpYvVpN0KRkAEhdxReEMdXLf2tIs1ClhpzQPsutrQ-1 bbbbbbbb-cccc-dddd-2222-333333333333 62e90394-69f5-4237-9190-012177145e10 /
4-PYiFWPHkqVOpuYmLiHa3ibEcXLJYtFq5x3Kkj2TkA-1 cccccccc-dddd-eeee-3333-444444444444 88d8e3e3-8f55-4a1e-953a-9b9898b8876b /
4-PYiFWPHkqVOpuYmLiHa2hXf3b8iY5KsVFjHNXFN4c-1 dddddddd-eeee-ffff-4444-555555555555 88d8e3e3-8f55-4a1e-953a-9b9898b8876b /
BSub0kaAukSHWB4mGC_PModww03rMgNOkpK77ePhDnI-1 eeeeeeee-ffff-aaaa-5555-666666666666 d29b2b05-8046-44ba-8758-1e26182fcf32 /
BSub0kaAukSHWB4mGC_PMgzOWSgXj8FHusA4iaaTyaI-1 ffffffff-aaaa-bbbb-6666-777777777777 d29b2b05-8046-44ba-8758-1e26182fcf32 /
列出主體的角色指派
使用 Get-MgRoleManagementDirectoryRoleAssignment 命令來列出主體的角色指派。
# Get role assignments for a given principal
Get-MgRoleManagementDirectoryRoleAssignment -Filter "PrincipalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'"
列出主體的直接和可轉移角色指派
使用 List transitiveRoleAssignments API,直接且可轉移方式指派給使用者的角色。
$response = $null
$uri = "https://graph.microsoft.com/beta/roleManagement/directory/transitiveRoleAssignments?`$count=true&`$filter=principalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'"
$method = 'GET'
$headers = @{'ConsistencyLevel' = 'eventual'}
$response = (Invoke-MgGraphRequest -Uri $uri -Headers $headers -Method $method -Body $null).value
列出群組的角色指派
使用 Get-MgGroup 命令來取得群組。
Get-MgGroup -Filter "DisplayName eq 'Contoso_Helpdesk_Administrators'"
使用 Get-MgRoleManagementDirectoryRoleAssignment 命令來列出群組的角色指派。
Get-MgRoleManagementDirectoryRoleAssignment -Filter "PrincipalId eq '<object id of group>'"
列出管理單位範圍中的角色指派
使用 Get-MgDirectoryAdministrativeUnitScopedRoleMember 命令來列出具有管理單位範圍的角色指派。
$adminUnit = Get-MgDirectoryAdministrativeUnit -Filter "displayname eq 'Example_admin_unit_name'"
Get-MgDirectoryAdministrativeUnitScopedRoleMember -AdministrativeUnitId $adminUnit.Id | FL *
本節說明如何列出在租用戶範圍的角色指派。 使用 List unifiedRoleAssignments API 來取得角色指派。
列出主體的角色指派
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=principalId+eq+'<object-id-of-principal>'
回應
HTTP/1.1 200 OK
{
"value":[
{
"id": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0uIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "10dae51f-b6af-4016-8d66-8c2a99b929b3",
"directoryScopeId": "/"
} ,
{
"id": "C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1wIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1",
"directoryScopeId": "/"
}
]
}
列出主體的直接和可轉移角色指派
請遵循下列步驟,使用 Microsoft Graph API 在 Graph 總管中列出指派給使用者的 Microsoft Entra 角色。
登入 Graph 瀏覽器。
使用 List transitiveRoleAssignments API 來獲取直接和轉接指派給使用者的角色。 將下列查詢新增至 URL。
GET https://graph.microsoft.com/beta/rolemanagement/directory/transitiveRoleAssignments?$count=true&$filter=principalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'
流覽至 要求標頭 索引標籤。新增 ConsistencyLevel
作為索引鍵,Eventual
作為其值。
選擇 執行查詢。
列出群組的角色指派
使用 Get group API 以取得群組。
GET https://graph.microsoft.com/v1.0/groups?$filter=displayName+eq+'Contoso_Helpdesk_Administrator'
使用 List unifiedRoleAssignments API 來取得角色指派。
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=principalId eq
列出角色定義中的指派角色
下列範例示範如何列出特定角色定義的角色指派。
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=roleDefinitionId eq '<template-id-of-role-definition>'
回應
HTTP/1.1 200 OK
{
"id": "C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1wIiSDKQoTVJrLE9etXyrY0-1",
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "00000000-0000-0000-0000-000000000000",
"directoryScopeId": "/"
}
按ID列出角色分配
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments/lAPpYvVpN0KRkAEhdxReEJC2sEqbR_9Hr48lds9SGHI-1
回應
HTTP/1.1 200 OK
{
"id": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0uIiSDKQoTVJrLE9etXyrY0-1",
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "10dae51f-b6af-4016-8d66-8c2a99b929b3",
"directoryScopeId": "/"
}
列出應用程式註冊範圍內的角色指派
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=directoryScopeId+eq+'/d23998b1-8853-4c87-b95f-be97d6c6b610'
回應
HTTP/1.1 200 OK
{
"value":[
{
"id": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0uIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "10dae51f-b6af-4016-8d66-8c2a99b929b3",
"directoryScopeId": "/d23998b1-8853-4c87-b95f-be97d6c6b610"
} ,
{
"id": "C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1wIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "00000000-0000-0000-0000-000000000000",
"directoryScopeId": "/d23998b1-8853-4c87-b95f-be97d6c6b610"
}
]
}
列出在管理單位範圍內的角色指派
使用 List scopedRoleMembers API 來列出具有管理單位範圍的角色指派。
請求
GET /directory/administrativeUnits/{admin-unit-id}/scopedRoleMembers
身體
{}