我想从LDAP中获取所有的用户信息,用ldapTemplate中的search方法 ,请问应该怎么写,过滤器 filter怎么写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我想从LDAP中获取所有的用户信息,用ldapTemplate中的search方法 ,请问应该怎么写,过滤器 filter怎么写相关的知识,希望对你有一定的参考价值。

filter能写为空么

如果你的用户属性里有uid
这可以这样写 (uid=*)
如果没有,可以写任何一个有的属性,然后属性值=*
参考技术A 你用什么ldap query 工具, ldapsearch 还是ICE 在linux上,还是windows上的相关工具。
建议你用Apache Directory Studio 安装到windows 上,GUI操作。
完全开源,非常好用,具体filter:

ICE Linux (注意变量替换):
1. /var/eDir88/eDirectory/opt/novell/eDirectory/bin/ice -l "$LOG_FILE" \
-S LDAP -s "$EDIR_ADDR" -d "$IDM_ICE_USERID" -w "$IDM_ICE_PASSWD" \
-b ou=Active,ou=Users,o=TOPTree-F "(&(workforceID=*))" \
-c sub -a uid,fullname,givenName,sn,eployeestatus \
-D DELIM -d ',' -q '"' -f "$LOCAL_EXPORT_FILE" -t uid,fullname,giveName,sn

2. LDAPsearch (linux)
ldapsearch -x -h hostiP -p 389 -b "ou=active,ou=users,o=TOPTree" -D "cn=adminAA,ou=adm,o=TOPTree" -password -LLL -T cn=* fullname

LDAP (Perl Linux)
#!/usr/bin/perluse Net::LDAP;$ldap = Net::LDAP->new( ''$hostip' or die "$@";$mesg = $ldap->bind ; # an anonymous bind$mesg = $ldap->search( # perform a searchbase => "ou=active,ou=users,o=TOPTree",filter => "(cn=wujun*),attrs => ['GroupMembership']);$mesg->code && die $mesg->error;foreach $entry ($mesg->entries) $entry->dump; $mesg = $ldap->unbind; # take down session

3.LDAP (Windows Apache Directory Studio)
(&(EnableEmail=True)(!(EnableEmailUserName=Jimmy*)))

4. 也有Windows 版本的ICE 或者LDAPsearch工具,命令参数和linux版本差不多,自己研究。

以上是关于我想从LDAP中获取所有的用户信息,用ldapTemplate中的search方法 ,请问应该怎么写,过滤器 filter怎么写的主要内容,如果未能解决你的问题,请参考以下文章

在Plone 4.1中,如何从特定组中获取LDAP用户?

java ldap - 获取信息是对 AD 的更改

在 Django 中搜索并获取匹配的 LDAP 用户列表

我想从 firebase 中的所有用户那里获取帖子 react native

将Ldap组织结构及用户信息同步到MySQL,用Spring Boot项目操作

LDAP:如何从 Active Directory 中获取所有用户和组