我有一个使用 ADAL.js 框架的 JavaScript 身份验证功能,它将用户重定向到 microsftonline 登录页面。之前我们可以使用 Microsoft 个人帐户和在 Azure AD 中创建的帐户成功进行身份验证,但现在它无法在 Microsoft 个人帐户中运行。
这是登录页面网址:
它返回以下错误:
AADSTS50020: We are unable to issue tokens from this api version for a Microsoft account.
Please contact the application vendor as they need to use version 2.0 of the protocol to support this.
这是我使用的代码:
var conf = {
instance: 'https://login.microsoftonline.com/',
tenant: 'common',
clientId: 'f69fde41-bc12-4a24-9833-10bef9704107',
postLogoutRedirectUri: 'http://localhost:1508/',
cacheLocation: 'localStorage',
callback: userSignedIn,
redirectUri: null
};
var authContext = new AuthenticationContext(conf);
最佳答案
ADAL 使用不支持个人 Microsoft 帐户的 Azure AD v1.0 终结点。如果要同时登录 Azure AD 和个人 Microsoft 帐户,可以使用 Azure AD v2.0 终结点 + Microsoft 身份验证库 (MSAL)。您还需要使用 application registration portal 重新注册应用程序。
Here's使用所述库和端点实现 JavaScript 单页应用程序的代码示例。您还可以找到有关 v2.0 和 MSAL 的更多文档 here 。
关于javascript - ADAL.js 无法在 Microsoft 个人帐户中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48555331/