C# ASP.NET MVC缓存用户信息(主体)
我有一个较旧的ASP.NET MVC应用程序运行在.NET Framework 4.5.2上,它为用户使用windows身份验证(它是intranet),然后是存储用户数据的自定义主体(用户权限,一些经常需要的其他元数据) 我需要“缓存”这些数据,而不是在每次请求时都重新加载它们,因为从多个来源获取这些数据的过程既昂贵又耗时 例如,假设每小时重新加载一次就足够了 正确保存用户数据(自定义主体)的选项有哪些? 正如现在所做的那样,我们正在使用一种我不喜欢的解决方案,但想不出/找到更好的解决方案C# ASP.NET MVC缓存用户信息(主体),c#,asp.net,asp.net-mvc,authorization,.net-4.5,C#,Asp.net,Asp.net Mvc,Authorization,.net 4.5,我有一个较旧的ASP.NET MVC应用程序运行在.NET Framework 4.5.2上,它为用户使用windows身份验证(它是intranet),然后是存储用户数据的自定义主体(用户权限,一些经常需要的其他元数据) 我需要“缓存”这些数据,而不是在每次请求时都重新加载它们,因为从多个来源获取这些数据的过程既昂贵又耗时 例如,假设每小时重新加载一次就足够了 正确保存用户数据(自定义主体)的选项有哪些? 正如现在所做的那样,我们正在使用一种我不喜欢的解决方案,但想不出/找到更好的解决方案 我
global.asax.cs
- 如果没有有效的授权cookie,我们将尝试通过以下方式创建一个授权cookie:
- 我们加载用户信息并创建
CustomPrincipal
- 将其序列化并存储在
FormAuthenticationTicket
- 然后将其加密并存储在
HttpCookie
- 我们加载用户信息并创建
global.asax.cs
- 主体被反序列化并在
中设置为主体(如果存在cookie)HttpContext.Current.User