Java Web 项目SSO实战二之(win7 and Windows server 2008)
2014-03-17 23:13
288 查看
JCIFS 的问题
Java Web 项目SSO实战 在上一篇中, 介绍了使用 jcifs 来进行域验证。
但是在Win7 或是windows server 2008 下, 验证却不成功, 会出现 :
jcifs.smb.SmbException: The parameter is incorrect.
类似的错误。
究其原因是因为:
JCIFS的HttpFilter并不支持NTLM2协议,而当客户端是WIN7系统时,默认采用的是NTLM2协议。如果此时域控服务器也支持NTLM2,则会默认采用NTLM2协议验证。就会出现异常了。
官方给出的解释也是不支持NTLM2,
可以参考官方解释: http://jcifs.samba.org/src/docs/ntlmhttpauth.html
The HTTP "filter" in particular uses a "man in the middle" technique that cannot support NTLMv2. Since late 2008, users have started to report that client security policy is requiring NTLMv2 and that this solution no longer works. For this reason and others described in this post, this feature will be removed from the JCIFS package.Currently we recommend using Jespa which properly implements NLTMv2 server side authentication and includes an advanced NTLMv2 HTTP SSO Servlet Filter.
以上就是说, JCIFS 不支持NTMLv2, HTTP filter 的功能之后也不再使用了, 官方推荐使用 Jespa.
所以使用JCIFS只能作为一种临时解决方案, 并不能作为最终方案。
JCIFS 的解决方法
如果已经使用JCIFS 作为解决方案, 只需要暂时解决Win7 等系统的问题的话。如何临时解决以上问题。解决方法是增加或修改注册表的以下信息:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa中新建一个dword值LMCompatibilityLevel,值为0,即可解决.
修改这个值是什么意思
.reg 文件
以上方式也可以通过执行注册表文件来快速修改文件名任意, 后缀名是 .reg 就可以了, 比如 ssontlm.reg
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa]
"LMCompatibilityLevel"=dword:00000001
reg 注册表文件转换为 EXE 可执行文件
可以使用Win RAR 菜单的 “添加到压缩文件...”相关文章推荐
- Java Web 项目SSO实战二之(win7 and Windows server 2008)
- Java Web 项目SSO实战
- Java Web 项目SSO实战
- JavaWeb 入门级项目实战 -- 文章发布系统 (第二节)
- 加载web项目时报的错误:Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modul
- Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modules (web项目不能加载到服务器))
- Java Drp项目实战——Web应用server
- JavaWeb 入门级项目实战 -- 文章发布系统 (第五节)
- JavaWeb 学习(Java Web 典型模块与项目实战大全)
- 加载web项目时报的错误:Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modul
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第六节)
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第十二节)
- 【java】itoo项目实战之java Web 中web的作用
- 项目实战:javaWeb工程中web.xml的基本配置解析
- 【手把手】JavaWeb 入门级项目实战 - 文章发布系统 (第一节)
- java开源框架SpringSide 3.1.4.3开发Web的demo项目实战
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第四节)
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第九节)
- 加载web项目时报的错误:Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modul
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (作者:剽悍一小兔)第六节学习随笔