jcifs windows 域账户单点登录(转)
1。首先从http://jcifs.samba.org 这个站点下载 jcifs-1.3.2.jar包。
2。把这个包放到相应的lib文件下面。
3。对web.xml文件进行配置,添加如下内容
<filter>
<filter-name>NtlmHttpFilter</filter-name>
<filter-class>jcifs.http.NtlmHttpFilter</filter-class>
<!--jcifs.http.domainController这个参数指定了DNS服务器的地址-->
<init-param>
<param-name>jcifs.http.domainController</param-name>
<param-value>192.168.1.206</param-value>
</init-param>
<!--jcifs.netbios.wins 这个参数也指定了DNS服务器的地址
The WINS server 192.168.1.206 will be querieddomain controller.
If that WINS server is not responding,192.168.1.207 will be queried.-->
<!--
<init-param>
<param-name>jcifs.netbios.wins</param-name>
<param-value>192.168.1.206,192.168.1.207</param-value>
</init-param> -->
<!--jcifs.smb.client.domain这个参数指定了DNS服务器上面的域名-->
<init-param>
<param-name>jcifs.smb.client.domain</param-name>
<param-value>DLHT</param-value>
</init-param>
<!--jcifs.util.loglevel
0: Nothing
1: Critical [default]
2: Basic info. (Can be logged under load)
3: Detailed info. (Highest recommended level forproduction use)
4: Individual smb messages
6: Hex dumps
-->
<init-param>
<param-name>jcifs.util.loglevel</param-name>
<param-value>0</param-value>
</init-param>
<!--下面这两个参数是针对windows 2003服务器来设定.
这里的用户名必须是DNS服务器上面的用户名和密码
you provide init-parameters for thejcifs.smb.client.{domain,username,password}
properties to perform "preauthentication" foreach transport to a domain contoller
so that a proper SMB signing key can begenerated.
-->
<init-param>
<param-name>jcifs.smb.client.username</param-name>
<param-value>xxxx</param-value>
</init-param>
<init-param>
<param-name>jcifs.smb.client.password</param-name>
<param-value>c!23456</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>NtlmHttpFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
4。要对你的DNS服务器添加NetBIOS协议。
5。对你的IE进行设置,自动使用当前用户名和密码登录。
6。用request.getRemoteUser();来获取当前登录的用户名。
通过对上面的配置以后,你就可以用当前配置 域中的用户进行登录了。
有什么地方写的不清楚,可以共同讨论。QQ:674706446
login.jsp 登录页面
<%@ page contentType="text/html;charset=gbk"%>
<%
//String userId =request.getParameter("userId");
String userId = request.getRemoteUser();
userId = userId.substring(userId.indexOf("\\") +1);
//passwordFlg 为单点登录标志 0为单点登录,1为正常登录
String str = "/ClientEnter?ClientEnter=" + userId +"&passwordFlg=0";
response.sendRedirect(str);
%>
原文出处:http://blog.csdn.net/zhpengfei0915/article/details/11965931
jcifs windows 域账户单点登录(转)的更多相关文章
- Windows Services windows域账户管理
windows 域账户管理 一.什么是域账户: 域账户是域是网络对象的分组.例如:用户.组和计算机.域中所有的对象都存储在 Active Directory 下.Active Directory 可 ...
- 深入理解跨域SSO(单点登录)原理与技术
一:SSO体系结构 SSO SSO英文全称Single Sign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其他 ...
- 可跨域的单点登录(SSO)实现方案
可跨域的单点登录(SSO)实现方案 SSO简介 定义: 传统的单站点登录访问授权机制是:登录成功后将用户信息保存在session中,sessionId保存在cookie中,每次访问需要登录访问的资源( ...
- 深入理解跨域SSO单点登录原理与技术
[本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究.若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!] 一:SSO体系结 ...
- 跨域分布式系统单点登录的实现(CAS单点登录)
1. 概述 上一次我们聊了一下<使用Redis实现分布式会话>,原理就是使用 客户端Cookie + Redis 的方式来验证用户是否登录. 如果分布式系统中,只是对Tomcat做了负载均 ...
- 可跨域的单点登录(SSO)实现方案【附.net代码】
SSO简介 定义: 传统的单站点登录访问授权机制是:登录成功后将用户信息保存在session中,sessionId保存在cookie中,每次访问需要登录访问的资源(url)时判断当前session是否 ...
- 基于Cookie跨域的单点登录问题
由于项目中,需要用的单点登录,主要的思路是:系统1:用户名密码-->写入Cookie-->其他系统读取Cookie. 1.在同一个服务器下的Cookie共享 @Component(&quo ...
- jsonp跨域实现单点登录,跨域传递用户信息以及保存cookie注意事项
网站A:代码:网站a的login.html页面刷新,使用jsonp方式将信息传递给b.com的login.php中去,只需要在b.com中设置一下跨域以及接收参数,然后存到cookei即可, 注意:网 ...
- [转] 可跨域的单点登录(SSO)实现方案
SSO简介 定义: 传统的单站点登录访问授权机制是:登录成功后将用户信息保存在session中,sessionId保存在cookie中,每次访问需要登录访问的资源(url)时判断当前session是否 ...
随机推荐
- 2n字符
有2n字符挨个排成一排,前n个是'1',后n个是'0'.如 11110000(此时2n=8),现在交换字符的位置,使之按照 10101010 的模式排列.而且要使字符移动的次数最少,编程计算最少的移动 ...
- 从零开始学Python 三(网络爬虫)
本章由网络爬虫的编写来学习python.首先写几行代码抓取百度首页,提提精神,代码如下: import urllib.request file=urllib.request.urlopen(" ...
- Java基本类型内存字节数
基本类型 字节数 位(bit) 取值范围 byte 1 1*8 -128~127 short 2 2*8 int 4 4*8 long 8 8*8 float 4 4*8 double ...
- Sublime自动去除代码行尾多余的空格
Preferences - > Settings - User 加入: "trim_trailing_white_space_on_save": true Ctrl+s就会自 ...
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- SQL Server 主键及自增长列的修改
一.对主键的修改 主键值都会带有主键约束,当执行update操作或是其他操作的时候就会受到限制无法修改,解决的方法是:取消主键约束->删掉主键列->插入修改后的主键值. (1)取消主键约束 ...
- git命令简介
git作为版本控制器,多分支功能能够很好的协同开发.其中分支中分为主分支和辅助分支 主分支包括:master分支和develop分支,不多做解释 辅助分支包括一下三种分支,其中 需求分支(Featur ...
- Scrapy框架学习第二天
编写scrapy爬虫的具体流程最初:分析网站页面需要爬取的结构第一步:创建scrapy项目:scrapy startproject +文件名第二步:打开项目第三步:编写items.py第四步:创建爬虫 ...
- 根据不同访问设备跳转到PC页面或手机页面
目前很多网站都是采用了响应式自适应页面的设计了,根据访问设备的不同,显示不同的内容.但是还是会有一些节奏比较慢的网站,还是PC页面和手机PAD页面不同的访问域名.正好我这里有个需要,同一个域名要根据不 ...
- elasticsearch基本使用
elasticsearch 是java对lucence的封装,所以需要事先安装java. 它适用于全文索引,便捷的分布式,主要原理就是倒排索引.一般搜索某个关键字,是通过在一篇篇文章中查找这个关键字, ...