没有关于如何确定从此AAD Graph API调用生成的应用程序角色分配列表的文档:
https://graph.windows.net/contoso.com/users/simon@contoso.com/appRoleAssignments
例如,如果用户拥有Office 365,则图表API响应中不会显示已分配的Office 365应用,但如果此用户浏览到https://myapps.microsoft.com/contoso.com,则会看到它们已列出。
是否可以澄清用于构建此列表中返回的应用程序的逻辑,以及是否可以检索所有分配给用户的应用程序?
答案 0 :(得分:1)
用户的iface eth0 inet6 static
address YOUR_IPV6
netmask IPV6_PREFIX
post-up /sbin/ip -f inet6 route add IPV6_GATEWAY dev eth0
post-up /sbin/ip -f inet6 route add default via IPV6_GATEWAY
pre-down /sbin/ip -f inet6 route del IPV6_GATEWAY dev eth0
pre-down /sbin/ip -f inet6 route del default via IPV6_GATEWAY
导航属性应包含用户在应用上分配的所有角色。如果应用程序没有声明可以分配给用户的任何appRoles,那么这里仍然会有一个实体带有全零GUID。
例如,我已将某个测试用户分配给没有角色的应用,并且appRoleAssignments
返回:
Get-AzureADUserAppRoleAssignment -ObjectId user-object-id
还有一个用于指定角色的应用程序:
DeletionTimestamp :
ObjectId : 1YoOkUy2bESZDaQwZRhU0S-UYlhvd3FJsJikOAWHrsI
ObjectType : AppRoleAssignment
CreationTimestamp : 17.1.2016 15.40.03
Id : 00000000-0000-0000-0000-000000000000
PrincipalDisplayName : Test User
PrincipalId : 910e8ad5-b64c-446c-990d-a430651854d1
PrincipalType : User
ResourceDisplayName : TodoService
ResourceId : 6b5b5ad6-54ce-415f-ad04-0a276ce086b0
请注意 Id 属性指定用户在该应用上拥有的角色的ID。在第一个的情况下,他们只是一般访问。
至于为什么Office 365应用程序不会显示在那里,如果我没记错,您不会通过Azure AD用户管理以相同的方式分配它们?应用程序分配可能是O365中的内部事物,Azure AD不了解它。可以从用户的DeletionTimestamp :
ObjectId : 1YoOkUy2bESZDaQwZRhU0YAvk4B2fQdPqcTGnjNiP_0
ObjectType : AppRoleAssignment
CreationTimestamp :
Id : 06608f41-55fb-400a-8da2-3d51909a0449
PrincipalDisplayName : Test User
PrincipalId : 910e8ad5-b64c-446c-990d-a430651854d1
PrincipalType : User
ResourceDisplayName : TestApp
ResourceId : ecf84db8-3333-43d0-809a-aaef620a14bf
导航属性(或使用Azure AD v2 PowerShell licenseDetails
)中找到许可证分配。