我正在一个带有几个Angular 4 SPA的系统上工作,每个SPA都与单独的Asp.NET Core 2.0 WebAPI进行通信。
Azure AD B2C被用作每个SPA / API的身份服务,而MSAL.js被用作Angular SPA的一部分。
我们希望支持单一登录,以防止用户从一个SPA切换到另一个SPA时需要重新输入凭据。
使用msal.js v0.1.7是否可以获得单点登录行为?
答案 0 :(得分:-1)
可以使用MSAL.js进行SSO。对于基于浏览器的应用程序,您可以通过Cookie /会话而不是令牌/令牌管理来实现SSO。请参阅Github library。通过MSAL.js,您可以使用AcquisitionTokenSilent()通过隐藏的iframe使用有效的cookie。
也就是说,推荐的方法是通过将Azure KMSI与自定义策略一起使用。这是因为基于浏览器的应用程序并不总是使用户保持登录状态,并且密码更改等操作可能会使用户会话无效。