作为学习应用程序,我在本文中使用的是AngularJS,ADAL js和WebAPI。
Angularjs-authentication-using-azure-active-directory-authentication-library-adal
教程非常整洁干净。在身份验证后,我尝试在Azure AD中添加用户[相同的AD我验证了我的凭据]。
要使用Azure AD,需要Azure AD Graph API。它需要Bearer Token。
要使用The Bearer令牌AuthorizationContext
。
var authcontext = new AuthenticationContext(GraphRequest.authority);
AuthenticationResult authResult = authcontext.AcquireToken(GraphRequest.apiResourceId,
GraphRequest.clientId, GraphRequest.redirectUri);
由于身份验证上下文处于控制状态,因此它会再次询问带有弹出窗口的凭据。但我已经有了主张权利。
有什么方法可以使用ClaimPrincipal获取bearerToken吗?
答案 0 :(得分:1)
您是否有机会在GitHub上查看我们的公开示例? 这样的事情可能对你有用: https://github.com/Azure-Samples/active-directory-angularjs-singlepageapp-dotnet-webapi
否则,通常情况下,您无法获取ID令牌,然后使用它来升级到访问令牌。您可以做的是跳过该登录提示,并且只需执行上面粘贴的代码即可获得访问令牌,该代码可以转换为ID令牌。
我希望这是有道理的,请随时与任何进一步的问题联系。 Shawn Tabrizi