/**
* 使用java连接AD域
* @date 2015-1-26
* @throws 异常说明
* @param host 连接AD域服务器的IP
* @param post AD域服务器的端口
* @param username 用户名
* @param password 密码
* @return Integer 1 success 、0 false 、 -1 exception
*/
public static Integer connectAD(String host,String post,String username,String password) {
DirContext ctx=null;
int isLogin = 0;
Hashtable<String,String> HashEnv = new Hashtable<String,String>();
HashEnv.put(Context.SECURITY_AUTHENTICATION, "simple"); // LDAP访问安全级别(none,simple,strong)
HashEnv.put(Context.SECURITY_PRINCIPAL, username!=null?username:""); //AD的用户名
HashEnv.put(Context.SECURITY_CREDENTIALS, password!=null?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 {
if(password!=null&&!password.equals("")){
ctx = new InitialDirContext(HashEnv);//初始化上下文
//System.out.println("身份验证成功!");
isLogin = 1;
}else{
//System.out.println("身份验证失败!");
isLogin = 0;//没有输入密码属于身份失败
}
} catch (AuthenticationException e) {
//System.out.println("身份验证失败!");
e.printStackTrace();
isLogin = 0;
} catch (javax.naming.CommunicationException e) {
//System.out.println("AD域连接失败!");
e.printStackTrace();
isLogin = -1;
} catch (Exception e) {
//System.out.println("身份验证未知异常!");
e.printStackTrace();
isLogin = -1;
} finally{
if(null!=ctx){
try {
ctx.close();
ctx=null;
} catch (Exception e) {
e.printStackTrace();
}
}
}
return isLogin;
}
分享到:
相关推荐
验证AD域用户登录 ,传入用户名(userName)和密码(password)进行验证。
这是用java连接window server 的Acitive Directory进行用户登陆验证的代码,里面用的是用户名的登陆名进行验证,也可以是用户的其他信息(如邮箱等)进行验证。
打包命令为:mvn clean package Jar包运行命令为:java -jar C:\Users\z00459km\Desktop\demo-0.0.1-SNAPSHOT.jar 亲测AD域认证通过,内容包含两种认证信息写法。
验证AD域账号登陆,获取AD域用户列表,获取用户邮箱,修改密码等AD域操作
java JNDI方式修改AD域密码 免ssl验证方式修改AD域密码 LDAP SSL 证书 javassl 很实用的一段代码,免去了复杂的证书操作过程。
JAVA ldap AD 域 免证书 查询 修改 删除 新增 启用 禁用 修改密码
java使用ldap修改ad域用户密码
SynchAccountToAD2012实例,需要的可以下载,封装了
LDAP实现AD域账号验证
配合本人AD域证书导入的配置博客,本代码为AD域用户插入和密码修改
主要介绍了JAVA使用Ldap操作AD域的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
实现了用java对AD域的增删改查功能,这只是当时我自己试验时候的例子。功能都实现了。
java对ad域的一些操作,里面的一些ip要进行一些修改就能用
介绍Ad域服务器证书如何申请,如何导出,如何导入到java秘钥库,地址:https://blog.csdn.net/hc1017/article/details/81293323 实现ssl 修改ad用户密码,禁用启用用户。有两个demo测试文
世上最全通过利用JAVA新建、修改、删除AD用户、添加至组及更新密码,包括证书服务器的配置、JAVA证书导...
java实现
这是个人配置的AD 的域名服务器全过程,欢迎大家前来交流和指正
提供AD的添加账号,删除账号,修改账号(修改密码)功能,附有详细代码
java 基于NTLM协议集成AD账号域登录 内含JAR包,DEMO包以及说明文档
JAVA通过LDAP+SSL(证书)实现用户和组织(部门)增删改查(Java代码部分),里面包含源码和文档,以便大家测试。