import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.NamingException;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
public class TestLdap {
public static void main(String[] args) {
String userName = "wangrl1@corp.homelink.com.cn";
String password = "password";
validateUserForAD(userName, password);
}
public static boolean validateUserForAD(String username, String password) {
String host = "172.16.3.11";
String port = "389";
{
Hashtable<String, String> env = new Hashtable<String, String>();
DirContext ctx;
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
String url = new String("ldap://" + host + ":" + port);
env.put(Context.PROVIDER_URL, url);
env.put(Context.SECURITY_AUTHENTICATION,"simple");
env.put(Context.SECURITY_PRINCIPAL, username);
env.put(Context.SECURITY_CREDENTIALS, password);
try {
ctx = new InitialDirContext(env);
ctx.close();
System.out.println("验证成功!");
return true;
} catch (NamingException err) {
err.printStackTrace();
System.out.println("验证失败!");
return false;
}
}
}
}