java 域验证用户

来源:互联网 发布:淘宝类目宝贝数量查询 编辑:程序博客网 时间:2024/06/09 17:23
<filter>
<filter-name>NtlmHttpFilter</filter-name>
<filter-class>jcifs.http.NtlmHttpFilter</filter-class>
<init-param>
<param-name>jcifs.http.domainController</param-name>
<param-value>192.168.0.90</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>NtlmHttpFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
192.168.0.90是你AD服务器,然后在你的登陆的代码中使用

request.getRemoteUser(),就可以得到当前域用户的用户名了


try {
UniAddress dc = UniAddress.getByName("192.168.0.90");
jcifs.smb.NtlmPasswordAuthentication auth = new jcifs.smb.NtlmPasswordAuthentication(
"192.168.0.90", "username", "password");
// jcifs.smb.SmbSession.getChallengeForDomain().
jcifs.smb.SmbSession.logon(dc, auth);
System.out.print("OK");


} catch (jcifs.smb.SmbAuthException e) {
String url = "domainlogin.jsp";
String msg = e.toString();
// request.setAttribute("errMsg", "密码或用户名错误");
// request.getRequestDispatcher(url).forward(request, response);
// json="{result:0}";
e.printStackTrace();


} catch (jcifs.smb.SmbException e) {
e.printStackTrace();
} catch (java.net.UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

原创粉丝点击