0

MSAL for Angular 文档将我带到 MSAL 的 JavaScript 文档

https://www.npmjs.com/package/@azure/msal-angular

https://github.com/AzureAD/microsoft-authentication-library-for-js/wiki/FAQs Q4。如何使用 MSAL.js 在我的应用程序中进行单点登录

https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-js-sso

“不同域上的应用程序当应用程序托管在不同域上时,域 A 上缓存的令牌无法被域 B 中的 MSAL.js 访问。

这意味着当在域 A 上登录的用户导航到域 B 上的应用程序时,他们将被重定向或使用 Azure AD 页面提示。由于 Azure AD 仍然具有用户会话 cookie,因此它将登录用户并且他们不必重新输入凭据。如果用户在与 Azure AD 的会话中有多个用户帐户,系统将提示用户选择相关帐户进行登录。”

Angular API 的 MSAL 具有 extraQueryParameters 作为字符串类型,这与 JavaScript 指令不同。loginRedirect(consentScopes?: string[], extraQueryParameters?: string): void;

目前一直提示用户登录。如何在不提示用户的情况下让 MSAL for Angular 检测存在的 SSO?

4

1 回答 1

0

根据 MSAL.js 及其 Angular 包装器的开发人员的说法:“这是 MSAL Angular 的一个已知缺点,但很快就会得到解决,因为我们目前正在努力升级 MSAL Angular 以使用 MSAL 1.x,这可以按预期工作. 当有可以尝试的版本时,我会在这里发布更新。

我们还将确保在文档中更清楚地说明如何执行此操作。”来源问题

同时,可以自定义库代码。您所描述行为的根本问题是开发人员始终通过重定向在登录时强制执行“prompt=&select_account”。为了避免再次显示登录屏幕,可以将其替换为 ""prompt=&none"

于 2019-12-20T07:15:45.727 回答