获取 Microsoft Entra ID 用户的应用角色列表对于管理员来说非常必要,以确保用户在企业应用中拥有适当的权限,防止未经授权的访问或权限提升。此可见性有助于执行最小权限访问,简化角色审计,并保持符合安全策略。
在使用 Get-MgUserAppRoleAssignment cmdlet 之前,请确保以下事项:
Install-Module Microsoft.Graph -Scope CurrentUser
Connect-MgGraph -Scopes "Directory.Read.All"
Get-MgUserAppRoleAssignment cmdlet 可用于 Microsoft Graph PowerShell 中获取 Microsoft Entra ID 用户应用角色分配。语法如下:
Get-MgUserAppRoleAssignment
-UserId <String>
[-ExpandProperty <String[]>]
[-Property <String[]>]
[-Filter <String>]
[-Search <String>]
[-Skip <Int32>]
[-Sort <String[]>]
[-Top <Int32>]
[-ConsistencyLevel <String>]
[-ResponseHeadersVariable <String>]
[-Headers <IDictionary>]
[-PageSize <Int32>]
[-All]
[-CountVariable <String>]
[-ProgressAction <ActionPreference>]
[<CommonParameters>]
列出特定用户的所有分配应用角色
Get-MgUserAppRoleAssignment -UserId <"user_id"> | Format-List Id, AppRoleID, CreationTimeStamp, PrincipalDisplayName,PrincipalId, PrincipalType, ResourceDisplayName
在此命令中,将 user_id 替换为您想要列出其所有分配应用角色的用户 ID。
下表包含一些可与 Get-MgUserAppRoleAssignment 命令一起使用的参数,以高效获取 Microsoft Entra ID 用户应用角色分配。
| 参数 | 描述 |
|---|---|
| -All | 此参数检索所有用户应用角色分配,无默认分页限制。 |
| -Filter | 此参数根据属性和值过滤用户应用角色分配。 |
| -UserId | 此参数根据唯一标识符(如用户主体名称或对象 ID)检索用户应用角色分配。 |
| -Property | 此参数检索用户应用角色分配的特定属性。 |
| -ConsistencyLevel | 启用高级查询功能以提升性能。 |
虽然 Microsoft Graph PowerShell 允许使用 Confirm-MgDomain 验证域所有权,但存在一些限制: