往LDAP中添加用户

import java.util.Properties;

import javax.naming.ldap.InitialLdapContext;
import javax.naming.NamingException;

import java.util.Properties;
import javax.naming.InitialContext;
import javax.naming.directory.Attributes;
import javax.naming.directory.BasicAttribute;
import javax.naming.Context;
import javax.naming.directory.*;
//import org.apache.ldap.common.message.Control;
/*
 * Created on 2006-9-20
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

/**
 * @author Administrator
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class test {

 private void putAttribute(Attributes attrs, 
   String attrName, String attrValue) {
   if (attrValue != null && attrValue.length() != 0) {
   Attribute attr = 
   new BasicAttribute(attrName, attrValue);
   attrs.put(attr);
   }
   }

 public static void main(String[] args) throws NamingException {
     test s = new test();
     s.doProcess();
    
 }
 public void doProcess() throws NamingException{
  Properties p = new Properties();
   
     p.setProperty("java.naming.factory.initial","com.sun.jndi.ldap.LdapCtxFactory");
     p.setProperty("java.naming.provider.url","ldap://lisa:389");
   
     p.setProperty("java.naming.security.authentication","simple");
     p.setProperty(Context.SECURITY_PRINCIPAL, "CN=administrator,cn=users,dc=lisa,dc=beijing,dc=indigo");
     p.put(Context.SECURITY_CREDENTIALS, "XXXXXX");
     InitialLdapContext ctx = new InitialLdapContext(p,null);
   
    
    

//   添加400个, 设置用户属性 
    
     for(int i=1 ;i<400;i++){
      String uid = "testtesttest"+i;
    String cn= "test" + i;
      Attributes attrs = new BasicAttributes("cn",cn,true);
   Attribute objclass = new BasicAttribute("objectclass");
   objclass.add("top");
   objclass.add("person");
   objclass.add("organizationalPerson");
   objclass.add("inetorgperson");
   attrs.put(objclass);
  
   String givenname = "test"+i;
   putAttribute(attrs, "cn",cn);
   putAttribute(attrs, "givenname", givenname);
   putAttribute(attrs, "sn", "test1");
   putAttribute(attrs, "uid", uid);
   putAttribute(attrs, "userpassword", "12345^a");
   putAttribute(attrs, "mail", "lni@indigo.com");
   putAttribute(attrs,"displayName","中文"+i);
   putAttribute(attrs, "telephonenumber", "111");
   putAttribute(attrs, "facsimiletelephonenumber", "1111");

//   添加用户节点
   ctx.createSubcontext("CN="+cn+",ou=集团公司,dc=lisa,dc=beijing,dc=indigo" , attrs);
         }
    //很奇怪的是, 被添加的用户都是处于禁用状态的, 怎么通过程序来启用用户呢?希望有高手指点.
 }

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值