【发布时间】:2010-03-19 07:01:18
【问题描述】:
有没有人尝试为 spring-ntlm NtlmProcessingFilter.java 文件做缓存,这样每个请求都不需要从微软活动目录查询来验证用户?如何使用ehcache实现这样的缓存
【问题讨论】:
标签: java spring-security ntlm
有没有人尝试为 spring-ntlm NtlmProcessingFilter.java 文件做缓存,这样每个请求都不需要从微软活动目录查询来验证用户?如何使用ehcache实现这样的缓存
【问题讨论】:
标签: java spring-security ntlm
我无法直接帮助您,但我的一些经验可能有用。我有一个使用修改后的jcifs ntlm 过滤器的应用程序。 (注意现有的过滤器实际上并不安全!)我的修改之一是,一旦用户通过身份验证,结果就会存储在会话中(而不是专门存储在缓存中)。
在执行整个 ntlm 协议之前,过滤器会检查会话中是否存在身份验证结果。如果有,那就不用麻烦了。
您唯一需要注意的是 HTTP 帖子。无论服务器是否要求,Internet Explorer 都要求 Posts 无论如何都要完成整个身份验证过程。所以你必须在你的过滤器中处理好它。
【讨论】:
Map<HttpSession,String> 很容易,它可以为每个会话存储经过身份验证的用户名(或其他详细信息)。如果会话的用户名存在,那么它可以避免重复身份验证(除非它是一个发布请求!)。