2017-03-10 43 views
1

我们有一个使用IdentityServer4作为STS的MVC应用程序。我们已将access_tokenidentity_token寿命设置为STS中Client属性的四个小时。我们还在我们的MVC客户端中添加了范围offline_accessOpenIdConnect令牌更新

我们如何在MVC客户端中从STS刷新access_token和/或identity_token

什么可以工作,但我不认为这是一个好的解决方案是请求每个请求一个新的令牌。我们是否应该在MVC客户端跟踪这段时间,然后调用如下代码:https://github.com/IdentityServer/IdentityServer4.Samples/blob/293622b8438d27f4c9c2574e43fe92a22560ac6b/Clients/src/MvcHybrid/Controllers/HomeController.cs#L46 或者是否有一些事件可以连接并请求新的令牌?

回答

1

您不刷新身份令牌 - 只访问令牌。

没有事件 - 基于过期时间主动刷新令牌 - 或者等到API返回401并且懒懒地刷新。

+0

我们使用System.IdentityModel包来检查当前访问令牌是否已过期或即将到期。如果这种情况是真的,我们会请求一个类似示例代码的新访问令牌。感谢您的澄清! – user1336