Java实现FreeIpa(LDAP)增删改查
一、首先需要初始化一个LdapContext对象
public static LdapContext context;
public static LdapContext getConn() {
String username = Constant.LDAP_USERNAME;
String password = Constant.LDAP_PASSWORD;
String server = Constant.LDAP_SERVER;
try {
Hashtable<String, String> env = new Hashtable<String, String>();
env.put(Context.SECURITY_PRINCIPAL, username);
env.put(Context.SECURITY_CREDENTIALS, password);
env.put(Context.PROVIDER_URL, server);
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put("com.sun.jndi.ldap.connect.pool", "true");
LdapContext ldapContext = new InitialLdapContext(env, null);
return ldapContext;
} catch (NamingException e) {
e.printStackTrace();
System.out.println("用户" + username + "登录验证失败");
System.out.println("错误信息:"+e.getExplanation());
return null;
}
}
二、添加操作
1. 添加用户
public static void addUser(HashMap<String,String> userMap) {
context = getConn();
try {
String name = userMap.get("name");
String email = userMap.get("email");
String sn = name.substring(0, 1);
String givenName