package check;
import java.util.Properties;
import java.util.ResourceBundle;
import javax.naming.*;
import javax.naming.directory.*;
public class AdCheck
{
ResourceBundle resource = ResourceBundle.getBundle("config");
String server_id = resource.getString("server_id");
String AD_Base = resource.getString("AD_Base");
String root_id = resource.getString("root_id");
private String ldapHost= "ldap://"+server_id+":389"; //Ldap host + port number
private String factory = "com.sun.jndi.ldap.LdapCtxFactory";
private String basedate = AD_Base;//
private String name = "";
public String isPassWordRight(String name ,String password)
{
Properties props = new Properties();
props.put(Context.INITIAL_CONTEXT_FACTORY, factory );
props.put(Context.SECURITY_AUTHENTICATION, "simple");
props.put(Context.PROVIDER_URL, ldapHost);
props.put(Context.SECURITY_PRINCIPAL,name+basedate);
props.put(Context.SECURITY_CREDENTIALS, password);
try
{
DirContext ldapconnect = new InitialDirContext(props);
this.name="ok";
}
catch(Exception ex)
{
}
return this.name;
}
public static void main(String [] args)
{
AdCheck ac = new AdCheck();
String reString = ac.isPassWordRight("abcd", "Dafe");
System.out.println("reString is:"+reString);
}
}
添加文件
config.properties
server_id=10.150.7.44
AD_id=dc/=fsx.ng,dc/=com
AD_Base=@company.com
root_id=DC/=FSX,DC/=NG,DC/=com