监控Azure令牌到期时间

时间:2017-05-18 14:08:39

标签: javascript azure session networking model-view-controller

我正在开发一个使用OAuth2.0进行azure身份验证的MVC应用程序 我需要帮助监控azure令牌,通过监控我的意思是,我想设置一些监视azure令牌到期时间的内容,当它即将到期时,它会向用户发出一条警告消息,告知会话超时。

我面临的问题是,当azure令牌到期时,所有ajax调用都失败,并且该特定会话的页面上的所有用户数据都消失了,有什么办法可以为azure令牌设置监视?

另一个问题是,当用户在页面上活动了将近一个小时时,令牌会以静默方式过期,用户必须刷新页面才能继续处理他们的内容,这会导致丢失所有数据他们已经进入了。

任何帮助将不胜感激。感谢

1 个答案:

答案 0 :(得分:0)

从azure获取令牌时,我们通常会获得带有expires_in的令牌(表示访问令牌有效的秒数)/ expires_on(表示到期时间),您可以使用它来监控令牌到期时间。通常令牌也包含到期时间。例如,以下是从azure广告发出的访问令牌,您可以找到iat(已发布),exp(到期时间轴)信息: enter image description here

第二个问题你可以参考Vittorio Bertocci的文章:Controlling a Web App’s session duration,你可以注入一个隐藏的iframe来静默地向Azure AD请求新的令牌。假设隐藏框架指向Azure AD域,只要Azure AD有一个有效的cookie维护用户会话,对新令牌的请求将不需要用户重新输入凭据 - 并且将以静默方式获取新令牌。在文章中有一个MVC中可用的代码示例,请参阅。

相关问题