池重置后会话令牌无效
本文关键字:令牌 无效 会话 | 更新日期: 2023-09-27 18:32:23
我正在使用基本身份验证在 ASP.NET Web API中使用Thinktecture IdentityModel。一切正常,我可以在过期时向服务器请求新令牌。我在AppHarbor中托管此应用程序。
问题是 AppHarbor 会定期重置池,因为如果应用程序在一段时间内未使用,它将进入"空闲"状态。
这使得我的应用程序使用 IdentityModel 颁发的令牌在池重置后不再有效。
我知道有一些技巧可以让AppHarbor保持活力。我不在寻找这种解决方案。有没有办法使用 IdentityModel 创建在池重置后有效的令牌?这是安全问题吗?
这是我设置身份验证的代码:
var authentication = new AuthenticationConfiguration
{
EnableSessionToken = true,
RequireSsl = false,
SessionToken = new SessionTokenConfiguration()
{
DefaultTokenLifetime = System.TimeSpan.FromDays(1),
EndpointAddress = "/Authenticate"
}
};
authentication.AddBasicAuthentication(authService.Authenticate, authService.GetRoles);
config.MessageHandlers.Add(new AuthenticationHandler(authentication));
创建 SessionTokenConfiguration,需要为 SigningKey 属性分配一致的值。这是一个签名密钥,因此它对于你的应用应该是唯一的,你应该将其视为机密。