我应该在MVC应用程序中缓存WindowsIdentity对象吗?如果是这样,最好的方法是什么?

时间:2015-07-11 09:33:51

标签: c# asp.net-mvc caching windows-identity

我目前正在我的MVC应用程序中生成一个WindowsIdentity对象,我理想情况下想要缓存它,这样我就不会在每次请求时都击中AD;问题是我经常遇到异常:" Safe Handle已关闭"

我已经读过这个错误弹出的地方,因为在请求结束后,IIS关闭了线程主体的句柄(在这种情况下是我使用缓存的Windows身份实例化的Windows主体)。

切入点,我应该缓存这个对象吗?缓存令牌更好的主意?或者我应该放弃缓存任何这些的想法吗?

提前致谢!

1 个答案:

答案 0 :(得分:0)

如果您使用LogonUser创建Windows令牌 - Windows内核中已经进行了一些优化和缓存。

我会远离尝试优化它,正如您已经注意到的那样,您应该将操作管理留给操作系统。