从Azure令牌解析用户组信息?
问题描述:
我正在使用Angular JS,现在我需要使用Azure AD SSO来验证我的应用程序。从Azure令牌解析用户组信息?
目前,我实现了与adal-angular相同。现在,除了我的要求,我需要解析用户组信息,其中包括我成功验证后获得的令牌(我将该令牌传递给后端服务,并且我需要解析它)
我来了解该天蓝色adal-angular实现不发送组信息,参考可用here。
- 1-是否有任何方式从当前实现获取用户组信息?
- 2-是否有可用的库而不是adal-angular?
- 3-我可以使用由azure adal-angular提供的JWT令牌调用图API以获取组信息?
任何建议,请提前致谢。
答
您可以在AAD中的应用程序清单中将groupMembershipClaims设置为“SecurityGroup”或“All”,然后您可以在id令牌中获得用户的组成员身份(这会为您提供用户名等)。有关更多详情,请参阅document。
请参考代码示例:https://github.com/Azure-Samples/active-directory-angularjs-singlepageapp。为了让组声明,更新UserData.html
得到集体的ID:
<p ng-repeat="value in userInfo.profile.groups">{{value}}</p>
另一种方式是让组成员:
POST https://graph.microsoft.com/v1.0/me/getMemberGroups
Content-type: application/json
Content-length: 33
{
"securityEnabledOnly": true
}
对于如何调用Azure的AD保护的Web API(微软曲线图你的场景)在AngularJS单页应用程序中。请参考代码示例:https://github.com/Azure-Samples/active-directory-angularjs-singlepageapp-dotnet-webapi