`
lao_lee
  • 浏览: 97081 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Windows SPNEGO 开发小结

阅读更多

经验1:

安装TAM 6.0 policy server 并与Microsoft Active Directory集成时,需要注意这样一点:MS Windows server 2003默认的域安全策略中有"启用密码复杂性"一项,密码最小长度是7位. 而TAM 6.0在安装时要向AD中写入用户,并且给定了一个4位的缺省密码,强度也不高,估计没有混大小写, 于是会安装失败. 所以安装以前需要把 w2k3的"密码复杂性"关掉,并把最小长度设为4位.再安装,OK.为了这个本人整整郁闷了一下午~~~虽然,根据老板的指示,不能在blog上对本公司产品方面做过多评论,但我还是要对Tivoli长太息一番~~~

经验2:

Windows提供的Internet API中只有一个用于修改HTTP header的函数,unfortunately,这个函数对头的大小有限制,稍微长一点的Base 64编码值就放不进去。我用了两天时间来研究这个WinInet API,在最后时刻发现了这个限制,决定放弃这个API。改用亲切的Apache HTTP client,加上JNI调用其他Windows SSPI函数的方案。

经验3:

BASE 64编码算法会自动插入回车符(\n),如果直接把base64编码放到Http头里面会把http头搞乱,因为http协议规定CRLF是一个http头的结束符。需要把编码中的\n滤掉。

分享到:
评论
2 楼 lao_lee 2007-06-15  
首先,你需要部署一个Windows AD domain。
其次,需要在域内配置你的Web server,你可以选择IIS,这个当然有很好的支持;也可以用Apache,这个需要安装一个Kerberos module,具体名字我忘了,一搜就知道了。
第三,需要为你的web server配置一个Windows AD用户。你需要安装Windows的supporting tools,然后运行ktpass -princ service_name -mapUser ABC$。这里的ABC是你的Web server机器的名字;service_name类似 HTTP/ABC.company.com@DOMAIN。
第四,要保证你的web server机器和domain controller机器的系统时间是同步的,误差不超过几分钟,这是Kerberos V5的要求。
1 楼 balaschen 2007-06-14  
请教你做的是WEB应用程序和AD做SSO吗?能不能介绍大体的实现步骤

相关推荐

Global site tag (gtag.js) - Google Analytics