我有一个客户端.Net应用程序,它使用ADAL访问在azure上运行的Web API应用程序。
服务器具有自定义代码,用于验证用户是否属于特定安全组。
问题是我的用户属于太多组,导致AAD根本不包括令牌中的组列表。
因此,我的自定义代码再次调用AAD Graph API来验证用户是否属于该组 - 除了客户端为获取身份验证令牌而进行的操作。
有没有办法告诉AAD只返回组声明中的这一个特定组(以便AAD将其包含在令牌中)?
任何其他想法(除了我目前没有的缓存)都会阻止我拨打第二个电话,我们将不胜感激。
答案 0 :(得分:6)
截至今天,AAD无法发送用户组的子集。一个可能的技巧是为您的应用定义角色,然后将该组分配给该角色。在这种情况下,只有当用户属于该组时,您才会在令牌中看到该角色。 HTH