ldap java导入数据,JAVA 写入数据到LDAP

Spring操作LDAP

增加依赖

org.springframework.ldap

spring-ldap-core

2.1.0.RELEASE

Java代码

import org.springframework.ldap.core.AuthenticationSource;

import org.springframework.ldap.core.LdapTemplate;

import org.springframework.ldap.core.support.LdapContextSource;

import javax.naming.InvalidNameException;

import javax.naming.Name;

import javax.naming.directory.Attributes;

import javax.naming.directory.BasicAttribute;

import javax.naming.directory.BasicAttributes;

import javax.naming.ldap.LdapName;

public class LdapDemoTest {

public static void main(String[] args) throws InvalidNameException {

LdapContextSource cs = new LdapContextSource();

cs.setCacheEnvironmentProperties(false);

cs.setUrl("ldap://*.*.*.*:389");

cs.setBase("dc=example,dc=org");

cs.setAuthenticationSource(new AuthenticationSource() {

public String getCredentials() {

return "*****";

}

public String getPrincipal() {

return "cn=admin,dc=example,dc=org";

}

});

LdapTemplate template = new LdapTemplate(cs);

for(int i=0;i<5;i++) {

createUserEntry(template, "test-"+i, i);

}

}

/**

* 构造dn.

* @param secondName username

* @return dn

*/

public static LdapName getDn(String secondName) throws InvalidNameException {

LdapName dn = new LdapName("cn="+secondName);

return dn;

}

/**

* bind方法即是创建;BasicAttribute 是基本属性,有了类属性之后,才能添加具体的属性.

* @param template LdapTemplate

* @param secondName user name

*/

public static void createUserEntry(LdapTemplate template, String secondName, int i) throws InvalidNameException {

Name dn = getDn(secondName);

BasicAttribute baAttr = new BasicAttribute("objectClass");

baAttr.add("top");

baAttr.add("person");

baAttr.add("posixAccount");

Attributes attrs = new BasicAttributes();

attrs.put(baAttr);

attrs.put("cn", secondName);

attrs.put("sn", secondName);

attrs.put("uid", secondName);

attrs.put("uidNumber", String.valueOf(i));

attrs.put("gidNumber", String.valueOf(i));

attrs.put("homeDirectory", String.valueOf(i));

attrs.put("userPassword",secondName);

template.bind(dn, null, attrs);

}

}

本文参考其余文章改造,非全部原创

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值