列出 Microsoft Entra 角色分配
本文介绍如何列出在 Microsoft Entra ID 中分配的角色。 在 Microsoft Entra ID 中,可以在组织范围内分配角色,也可以在单应用程序范围内分配角色。
- 组织范围的角色分配会添加到单应用程序角色分配列表中,并可在其中查看它们。
- 单应用程序范围的角色分配不会添加到组织范围的分配列表中,也不能在其中查看它们。
先决条件
- 使用 PowerShell 时的 Microsoft Graph PowerShell 模块
- 将 Graph 浏览器用于 Microsoft Graph API 时需要管理员同意
有关详细信息,请参阅使用 PowerShell 或 Graph 浏览器的先决条件。
Microsoft Entra 管理中心
提示
本文中的步骤可能因开始使用的门户而略有不同。
此过程介绍如何列出组织范围的角色分配。
浏览到“标识”>“角色和管理员”>“角色和管理员”。
选择角色以打开并查看其属性。
选择“分配”以列出角色分配。
列出我的角色分配
你也可轻松列出自己的权限。 在“角色和管理员”页上选择“你的角色”,可查看当前分配给你的角色。
下载角色分配
若要跨所有角色(包括内置角色和自定义角色)下载所有活动角色分配,请按照这些步骤(当前为预览版)操作。
若要下载特定角色的所有分配,请执行以下步骤。
列出单一应用程序范围的角色分配
此部分介绍如何列出单一应用程序范围的角色分配。 此功能目前处于公开预览状态。
登录到 Microsoft Entra 管理中心。
浏览到“标识”>“应用程序”>“应用注册”。
选择应用注册以查看其属性。 可能需要选择“所有应用程序”才能查看 Microsoft Entra 组织中应用注册的完整列表。
在应用注册中,选择“角色和管理员”,然后选择一个角色,以查看其属性。
选择“分配”以列出角色分配。 如果在应用注册中打开分配页,会显示范围设为此 Microsoft Entra 资源的角色分配。
PowerShell
此部分介绍如何查看组织范围的角色分配。 本文使用 Microsoft Graph PowerShell 模块。 若要使用 PowerShell 查看单应用程序范围的分配,可以使用通过 PowerShell 分配自定义角色中的 cmdlet。
使用 Get-MgRoleManagementDirectoryRoleDefinition 和 Get-MgRoleManagementDirectoryRoleAssignment 命令列出角色分配。
以下示例演示如何列出组管理员角色的角色分配。
# Fetch list of all directory roles with template ID
Get-MgRoleManagementDirectoryRoleDefinition
# Fetch a specific directory role by ID
$role = Get-MgRoleManagementDirectoryRoleDefinition -UnifiedRoleDefinitionId fdd7a751-b60b-444a-984c-02652fe8fa1c
# Fetch membership for a role
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 /
Microsoft Graph API
此部分介绍如何列出组织范围的角色分配。 若要使用 Graph API 列出单一应用程序范围的角色分配,可以使用通过 Graph API 分配自定义角色中的操作。
使用 List unifiedRoleAssignments API 获取特定角色定义的角色分配。 以下示例演示如何列出 ID 为 00000000-0000-0000-0000-000000000000
的特定角色定义的角色分配。
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": "/"
}
后续步骤
- 可随时在 Microsoft Entra 管理角色论坛上与我们分享你的观点。
- 有关角色权限的详细信息,请参阅 Microsoft Entra 内置角色。
- 有关默认用户权限,请参阅默认来宾和成员用户权限的比较。