【问题标题】:Spring NTLM NtlmProcessingFilter do cacheSpring NTLM NtlmProcessingFilter 做缓存
【发布时间】:2010-03-19 07:01:18
【问题描述】:

有没有人尝试为 spring-ntlm NtlmProcessingFilter.java 文件做缓存,这样每个请求都不需要从微软活动目录查询来验证用户?如何使用ehcache实现这样的缓存

【问题讨论】:

    标签: java spring-security ntlm


    【解决方案1】:

    我无法直接帮助您,但我的一些经验可能有用。我有一个使用修改后的jcifs ntlm 过滤器的应用程序。 (注意现有的过滤器实际上并不安全!)我的修改之一是,一旦用户通过身份验证,结果就会存储在会话中(而不是专门存储在缓存中)。

    在执行整个 ntlm 协议之前,过滤器会检查会话中是否存在身份验证结果。如果有,那就不用麻烦了。

    您唯一需要注意的是 HTTP 帖子。无论服务器是否要求,Internet Explorer 都要求 Posts 无论如何都要完成整个身份验证过程。所以你必须在你的过滤器中处理好它。

    【讨论】:

    • @John 感谢您指出这一点。我仍在寻找正确的方法来直接将其缓存在 NLTMProcessingFilter 类中,而不是在用户会话中
    • 我没有强烈的意见认为身份验证信息应该存储在会话中,但这样似乎更容易。在过滤器类中有一个Map<HttpSession,String> 很容易,它可以为每个会话存储经过身份验证的用户名(或其他详细信息)。如果会话的用户名存在,那么它可以避免重复身份验证(除非它是一个发布请求!)。
    猜你喜欢
    • 2011-01-07
    • 2013-06-22
    • 1970-01-01
    • 1970-01-01
    • 2016-10-13
    • 2012-02-12
    • 2019-03-04
    • 2016-08-29
    • 1970-01-01
    相关资源
    最近更新 更多