如何以windows身份验证登录web系统

 

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 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 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 the jcifs.smb.client.{domain,username,password}
     properties to perform "preauthentication" for each transport to 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进行设置,自动使用当前用户名和密码登录。

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

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

 

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);
%>

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值