Angularjs ADAL登录和验证用户取决于Microsoft帐户登录/注销

Angularjs ADAL登录和验证用户取决于Microsoft帐户登录/注销,angularjs,adal,Angularjs,Adal,我们正在尝试在我的应用程序中执行静默SSO。我们使用adal-angular.js库进行用户登录。场景是,如果用户登录office 365帐户并打开我的应用程序,则用户不必登录我们的应用程序。但如果用户登录office 365并且我们的应用程序令牌在用户意外注销1小时后过期。我不知道该怎么办。我们要求用户应依赖office 365或Microsoft帐户登录/注销。如果用户与Azure AD有活动会话,则ADAL JS在令牌自动过期后获得续订令牌(不会发生意外注销)。ADAL JS检查现有令牌(

我们正在尝试在我的应用程序中执行静默SSO。我们使用adal-angular.js库进行用户登录。场景是,如果用户登录office 365帐户并打开我的应用程序,则用户不必登录我们的应用程序。但如果用户登录office 365并且我们的应用程序令牌在用户意外注销1小时后过期。我不知道该怎么办。我们要求用户应依赖office 365或Microsoft帐户登录/注销。

如果用户与Azure AD有活动会话,则ADAL JS在令牌自动过期后获得续订令牌(不会发生意外注销)。ADAL JS检查现有令牌(缓存中)的预计到期时间,如果令牌即将到期,它将使用不可见的iFrame向Azure AD发送新令牌(续订)请求


Vittorio对此进行了详细讨论(带有示例代码),并讨论了静默更新的机制。

ADAL JS在令牌自动过期后会获得续订令牌,这在ADAL.JS的最新版本中不会发生,我已经对其进行了测试。我通过在令牌到期后手动调用adal.Login()方法来处理这个问题,但这也会产生新的问题。在令牌到期后,若调用adal.login()方法,用户将再次获取新令牌并对用户进行身份验证。