博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用java连接AD域,验证账号密码是否正确
阅读量:6909 次
发布时间:2019-06-27

本文共 1856 字,大约阅读时间需要 6 分钟。

hot3.png

转载

import java.util.Hashtable; import javax.naming.AuthenticationException;import javax.naming.Context;import javax.naming.directory.DirContext;import javax.naming.directory.InitialDirContext; /** * 使用java连接AD域,验证账号密码是否正确 * @author Herman.Xiong * @date 2014-12-23 下午02:07:26 * @version V3.0 * @since jdk 1.6,tomcat 6.0 */public class AdTest {		/**	 * 使用java连接AD域	 * @author Herman.Xiong	 * @date 2014-12-23 下午02:24:04	 * @return void  	 * @throws 异常说明	 * @param host 连接AD域服务器的ip	 * @param post AD域服务器的端口	 * @param username 用户名	 * @param password 密码	 */	public static void connect(String host,String post,String username,String password) {		DirContext ctx=null;		Hashtable
HashEnv = new Hashtable
(); HashEnv.put(Context.SECURITY_AUTHENTICATION, "simple"); // LDAP访问安全级别(none,simple,strong) HashEnv.put(Context.SECURITY_PRINCIPAL, username); //AD的用户名 HashEnv.put(Context.SECURITY_CREDENTIALS, password); //AD的密码 HashEnv.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory"); // LDAP工厂类 HashEnv.put("com.sun.jndi.ldap.connect.timeout", "3000");//连接超时设置为3秒 HashEnv.put(Context.PROVIDER_URL, "ldap://" + host + ":" + post);// 默认端口389 try { ctx = new InitialDirContext(HashEnv);// 初始化上下文 System.out.println("身份验证成功!"); } catch (AuthenticationException e) { System.out.println("身份验证失败!"); e.printStackTrace(); } catch (javax.naming.CommunicationException e) { System.out.println("AD域连接失败!"); e.printStackTrace(); } catch (Exception e) { System.out.println("身份验证未知异常!"); e.printStackTrace(); } finally{ if(null!=ctx){ try { ctx.close(); ctx=null; } catch (Exception e) { e.printStackTrace(); } } } } public static void main(String[] args) { AdTest.connect("192.168.0.1", "389", "herman@herman.com", "123456"); }}

转载于:https://my.oschina.net/findurl/blog/2876775

你可能感兴趣的文章
我的友情链接
查看>>
IEnumerable和IEnumerable<T>接口
查看>>
重定向redirect与跳转forward区别
查看>>
CentOS7之Rsync+Inotify架构实现实时同步文件和文件夹
查看>>
linux日志管理
查看>>
A.约数个数的和
查看>>
BZOJ1041:[HAOI2008]圆上的整点(数论)
查看>>
c# small tips
查看>>
双色球
查看>>
git 添加tab补全
查看>>
web.xml配置
查看>>
Leetcode 67 二进制求和
查看>>
素数判断的多种方法
查看>>
linux上我认为最适合编程和使用的字体
查看>>
卡牌十连抽问题
查看>>
个人作业——软件工程实践总结作业(天亮了)
查看>>
算法模板——线性欧拉函数
查看>>
价值观
查看>>
Mock.js——数据模板定义
查看>>
MacOS X APK 最新版本 反编译
查看>>