spring ldap 使用总结

1.报错

1.1 

org.springframework.ldap.PartialResultException: Unprocessed Continuation Reference(s); nested exception is javax.naming.PartialResultException: Unprocessed Continuation Reference(s); remaining name '/'

解决:

ldapTemplate的setIgnorePartialResultException设置为true.

ldapTemplate.setIgnorePartialResultException(true);

 2.新建用户

Name dn =LdapNameBuilder.newInstance()
                .add("ou","xx软件")
                .add("cn", "张三")
                .build();
        DirContextAdapter context = new DirContextAdapter(dn);
        context.setAttributeValues("objectclass", new String[] { "top", "user", "person" ,"organizationalPerson"});
        context.setAttributeValue("cn", "张三");
        ldapTemplate.bind(dn, context, null);
        System.out.println(eipLdapTemplate);

需要注意的是,name类的实例dn表示用户的distinguishedName,需要包含cn属性,如果不包含cn属性会报错.

cn需要和context的attribute属性的cn相等才可以创建用户,通过bind方法可以在ou为xx软件的机构下创建名称为张三的用户.

 

posted @ 2023-03-23 15:00  随意的马蒂洛克  阅读(779)  评论(0编辑  收藏  举报