zoukankan      html  css  js  c++  java
  • JCIFS实现单点登录


    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 queried domain controller.

        If that WINS server is not responding, 192.168.1.207 will bequeried.-->

       <!--

       <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 for production 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" for each transportto a domain contoller

        so that a proper SMB signing key can be generated.

       -->

       <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进行设置,自动使用当前用户名和密码登录。(右击IE图标—>安全—>自定义级别-à用户验证---à自动使用当前用户名和密码登录)

    6。用request.getRemoteUser();来获取当前登录的用户名。

    通过对上面的配置以后,你就可以用当前配置 域中的用户进行登录了。

    有什么地方写的不清楚,可以共同讨论。QQ:674706446

    login.jsp 登录页面

    <%@ pagecontentType="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);

    %>

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/OracleJ/archive/2008/12/23/3590497.aspx

    廖世勇
  • 相关阅读:
    固态硬盘安装后优化
    如何在面试中为人才留下好印象
    数据化管理学习笔记
    项目经理入门记(一)
    Ubuntu10下MySQL搭建Amoeba系列(文章索引)
    SQL Server 性能优化实战系列(文章索引)
    Ubuntu12下挂载硬盘(9TB)(文章索引)
    SQL Server 设计开发系列(文章索引)
    简单实用SQL脚本
    SQL Server 维护管理系列(文章索引)
  • 原文地址:https://www.cnblogs.com/liaoshiyong/p/3150856.html
Copyright © 2011-2022 走看看