我知道这并没有多大意义,但我的客户请求让令牌永不过期。ASP.NET身份使电子邮件/密码令牌永不过期
我做了一些研究,发现我可以指定时长为TokenLifespan
,所以我首先想到的是让时间超长从而使令牌似乎是“永不过期”
var dataProtectionProvider = options.DataProtectionProvider;
if (dataProtectionProvider != null)
{
manager.UserTokenProvider =
new DataProtectorTokenProvider<ApplicationUser>(dataProtectionProvider.Create("ASP.NET Identity"))
{
TokenLifespan = TimeSpan.FromHours(2160)
};
}
然而,无论我为TokenLifespan
设置了什么,该令牌仍将在3天后过期。
我做了一个测试,说1天或2天,他们工作得很好,但由于某些原因,它不能超过3天。到底发生了什么?
如果用户的安全邮票变化,它会令牌无效的。你有没有证实这没有发生? – Shoe 2015-03-02 15:55:57
我没有真正验证它,但它不应该改变。我在星期五和周末生成了令牌,没有人触及系统(我有测试环境) – 2015-03-02 16:01:44