1

作为学习应用程序,我正在使用本文中提到的 AngularJS、ADAL js 和 WebAPI。

Angularjs-authentication-using-azure-active-directory-authentication-library-adal

教程对于实现来说非常整洁。身份验证后,我尝试在 Azure AD 中添加一个用户 [我验证了我的凭据的同一个 AD ]。

要使用 Azure AD,有 Azure AD Graph API。它需要持有者令牌。

AuthorizationContext将使用The Bearer 令牌。

var authcontext = new AuthenticationContext(GraphRequest.authority);
            
AuthenticationResult authResult = authcontext.AcquireToken(GraphRequest.apiResourceId, 
GraphRequest.clientId, GraphRequest.redirectUri);

由于身份验证上下文处于控制之中,因此它再次通过弹出窗口询问凭据。但我已经有一个claimPrincipal。

有什么方法可以使用 ClaimPrincipal 来获取 BearerToken 吗?

4

1 回答 1

1

您有机会查看我们在 GitHub 上的公开示例吗?像这样的东西可能对您有用: https ://github.com/Azure-Samples/active-directory-angularjs-singlepageapp-dotnet-webapi

否则,一般情况下,您无法获取 ID 令牌,然后使用它升级到访问令牌。您可以做的是跳过该登录提示,只需执行您在上面粘贴的代码即可获取访问令牌,该令牌可以转换为 ID 令牌。

我希望这是有道理的,请随时与任何进一步的问题联系。肖恩大不里士

于 2015-10-22T17:58:57.017 回答