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 域账户单点登录(转)的更多相关文章

  1. Windows Services windows域账户管理

    windows  域账户管理 一.什么是域账户: 域账户是域是网络对象的分组.例如:用户.组和计算机.域中所有的对象都存储在 Active Directory 下.Active Directory 可 ...

  2. 深入理解跨域SSO(单点登录)原理与技术

    一:SSO体系结构 SSO ​ SSO英文全称Single Sign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其他 ...

  3. 可跨域的单点登录(SSO)实现方案

    可跨域的单点登录(SSO)实现方案 SSO简介 定义: 传统的单站点登录访问授权机制是:登录成功后将用户信息保存在session中,sessionId保存在cookie中,每次访问需要登录访问的资源( ...

  4. 深入理解跨域SSO单点登录原理与技术

    [本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究.若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!] 一:SSO体系结 ...

  5. 跨域分布式系统单点登录的实现(CAS单点登录)

    1. 概述 上一次我们聊了一下<使用Redis实现分布式会话>,原理就是使用 客户端Cookie + Redis 的方式来验证用户是否登录. 如果分布式系统中,只是对Tomcat做了负载均 ...

  6. 可跨域的单点登录(SSO)实现方案【附.net代码】

    SSO简介 定义: 传统的单站点登录访问授权机制是:登录成功后将用户信息保存在session中,sessionId保存在cookie中,每次访问需要登录访问的资源(url)时判断当前session是否 ...

  7. 基于Cookie跨域的单点登录问题

    由于项目中,需要用的单点登录,主要的思路是:系统1:用户名密码-->写入Cookie-->其他系统读取Cookie. 1.在同一个服务器下的Cookie共享 @Component(&quo ...

  8. jsonp跨域实现单点登录,跨域传递用户信息以及保存cookie注意事项

    网站A:代码:网站a的login.html页面刷新,使用jsonp方式将信息传递给b.com的login.php中去,只需要在b.com中设置一下跨域以及接收参数,然后存到cookei即可, 注意:网 ...

  9. [转] 可跨域的单点登录(SSO)实现方案

    SSO简介 定义: 传统的单站点登录访问授权机制是:登录成功后将用户信息保存在session中,sessionId保存在cookie中,每次访问需要登录访问的资源(url)时判断当前session是否 ...

随机推荐

  1. 缓存之Memcache

    Memcache Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度. ...

  2. .net core 发送邮件

    var message = new MimeMessage();            //发送方            message.From.Add(new MailboxAddress(&qu ...

  3. .NET Core和Swagger 生成 Api 文档转

    阅读目录 1.引用 2.打开startup.cs文件 3.设置XML注释 4.运行结果 5.主要问题的解决办法 6.可以自定义UI 前言 最近写了好多Web api, 老大说太乱了,要整理一下,使用S ...

  4. idea springboot jrebel hotreloaded

    http://127.0.0.1:8888/88414687-3b91-4286-89ba-2dc813b107ce

  5. request.getParameter()在get和post方法中文乱码问题

    乱码原因:Http请求传输时将url以ISO-8859-1编码,服务器收到字节流后默认会以ISO-8859-1编码来解码成字符流(造成中文乱码) post请求: 假设提交请求的jsp页面是UTF-8编 ...

  6. Abp 中 模块 加载及类型自动注入 源码学习笔记

    注意 互相关联多使用接口注册,所以可以 根据需要替换. 始于 Startup.cs 中的  通过 AddApplication 扩展方法添加 Abp支持 1 services.AddApplicati ...

  7. linux常用命令 grep命令

    linux grep命令 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配行打印出来 grep 全称 Grobal Regular Expression Pr ...

  8. 如何调用别人提供的webservice接口

    当我们拿到一个接口的时候,先别急着去调用它,我们得先测试这个接口是否正确,是否能调用成功,以及返回的数据是否是我们需要的类型等等.这时候我们需要一个工具,比如SoapUI.(最好用绿色免安装版的.)然 ...

  9. 关于:无法创建链接服务器 "ORCL" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 的实例 (错误:7302)

    本人接触和使用Oracle数据库才有一个季度的时间,问题比较白,大神请无视本文. 环境: 1.数据服务器,windows2008R2,Oracle11g 2.报表服务器,windows2008R2,S ...

  10. git 仓库原理

    Git 版本控制原理 标签: git 版本控制 版本回退 2017年01月13日 21:07:202399人阅读 评论(0) 收藏 举报  分类: Git(4)  版权声明:本文为博主原创文章,未经博 ...