AAD目录角色权限与Graph权限的差异及映射方法问询
AAD目录角色权限与Microsoft Graph权限的差异及映射方法
我正在尝试通过编程确定用户分配到特定AAD目录角色时继承的Graph权限。查看内置Azure Active Directory角色时,权限是以路径形式列出的,比如Global Reader角色的首个权限是microsoft.directory/accessReviews/allProperties/read,可以通过Azure门户查看,也能用Microsoft.Graph PowerShell模块查询:
PS> $roleDef = Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Global Reader'" PS> $roleDef.RolePermissions.AllowedResourceActions microsoft.directory/accessReviews/allProperties/read microsoft.directory/accessReviews/definitions/allProperties/read
但Graph权限通常是User.Read、Directory.ReadWrite.All这类格式,比如可以通过以下命令查看用户的委托权限和应用权限:
Get-MgUserOauth2PermissionGrant -UserId $userId Get-MgUserAppRoleAssignment -UserId $userId
针对这两种权限的疑问,解答如下:
1. AAD角色权限与Graph权限存在差异的原因
两者是为不同场景设计的权限体系,核心差异在于定位和作用范围:
- 定位不同:
- AAD目录角色是Azure AD的租户管理权限体系,面向租户内的管理操作,粒度更细,以资源路径形式定义对Azure AD内部资源(如用户、组、访问评审)的具体操作权限,属于RBAC模型,用于管控管理员对租户核心管理功能的访问。
- Graph权限是Microsoft Graph API的调用授权体系,面向API接口的访问控制,分为委托权限(代表用户调用API)和应用权限(应用自身调用API),粒度相对较粗,用于控制哪些API接口可以被访问,属于OAuth2授权模型,针对Graph API的数据访问面。
- 设计目标不同:
- AAD角色的目标是让管理员精细化管控租户内的管理动作,比如限制某角色只能重置普通用户密码、不能修改全局设置。
- Graph权限的目标是让应用/用户安全调用Graph API获取或修改数据,比如允许应用读取所有用户信息、禁止修改邮箱配置。
- 作用范围不同:
- AAD角色的权限范围通常是整个Azure AD租户(或特定范围的资源),是针对租户管理面的全局权限。
- Graph权限可以有不同粒度范围,比如
User.Read仅允许访问当前用户的数据,Directory.Read.All允许访问整个租户的目录数据。
2. 如何将AAD目录角色权限映射到Graph权限
目前没有官方的一对一精准映射,但可以通过以下几种方式实现近似映射:
- 参考官方角色文档:微软官方会在每个AAD内置角色的说明中,明确列出该角色对应的Graph API访问能力。比如Global Reader角色基本对应所有Read类的目录级Graph权限(如
Directory.Read.All、Group.Read.All、User.Read.All等),可直接查阅角色权限说明对应到Graph权限。 - 通过权限路径推导:AAD角色的权限路径可拆解为「资源类型+操作」,比如
microsoft.directory/users/allProperties/read对应Graph API中用户资源的读取操作,匹配User.Read.All或Directory.Read.All权限;microsoft.directory/groups/allProperties/write对应Group.ReadWrite.All权限。 - API调用验证:模拟拥有目标AAD角色的用户,调用对应的Graph API,通过返回结果判断是否具备对应的Graph权限。比如调用
Get-MgUser -All $true如果成功,说明用户具备Directory.Read.All或User.Read.All权限。 - 自定义角色关联:如果是自定义AAD角色,创建时可根据需要关联的Graph API操作,直接在
AllowedResourceActions中添加对应的路径,或反向根据自定义角色的权限路径,匹配对应的Graph权限范围。
内容的提问来源于stack exchange,提问作者geoced
相关产品推荐
相关产品推荐

