❶ 我想从LDAP中获取所有的用户信息,用ldapTemplate中的search方法 ,请问应该怎么写,过滤器 filter怎么写
如果你的散液孝用户属性里有uid
这可以这样写 (uid=*)
如果没有,可以写任何一个埋消有的属性,然后属性值冲稿=*
❷ 急急急~大神帮忙,查不出来数据了!ldap如何查处某个字段为空的数据,过滤器要怎么写
Can you try 'is null'?
❸ LDAP(一)之概念原理介绍
LDAP目录服务器是基于客户/服务器模式的。一个或者多个LDAP服务器包含着组成整个目录差镇信息树(DIT)的数据。客户连接到服务器并且并发一个请求(request)。然后服务器要么以一个回答(answer)予以回应,要么给出一个指针,客户可以通过此指针获取到所需的数据(通常,该指针是指向另一个LDAP服务器)。无论客户连到哪个LDAP服务器,它看到的都是同一个目录视图(view)。这是LDAP这类全局目录服务的一个重要特征。
条目和属性的关系:
LDAP的信息模型是基于条目的(entry)。一个条目就是一些具有全局唯一的标识名(Distinguished Name,简写做DN)的属性的集合。DN用于无二义性的纸袋一个唯一的条目。条目的每一个属性都有一个类型(type),一个或者多个值(value)。类型往往是特定字符串的简写,比如用“cn”指代“common name”,或是"mail"指代电子邮件地址。值(value)的语法依赖于类型(type)。比如,类型为cn的属性可能包含值"候剑豪"。类型为mail的属性可能包含值“ [email protected] ”。类型为jpeg Photo的属性可能包含二进制格式的JPEG图像。
在LDAP中,条目是按树状的层次结构组织的。传统上,这个机构旺旺是代理界限或组织界限的反应。代表国家的条目位与整个目录树的顶层。之下的条目则代表各个州以及国家性的组织。在下面的条目则代表着组织单位,个人,打印机,文件,或者你所能想到的其他的东西。目录是也可以按照因特网域名组织结构,因为它允许按照DNS对目录服务进行定时,这种命名方式正变得越来越受欢迎。下图是按照域名进行组织的一个LADP目录树,相比传统的命名方式更加让用户易郑咐于接受。另外,LDAP允许你通过使用一种叫做objectClass的特殊属性来控制哪些属性是条目所必须的,哪些属性是条目可选的。objectClass属性的值是由条目所必须遵守的方案(schema)来定义喊庆纯的。
一个条目是通过它的标识名来引用的。而标识名(Relative DistinguishedName 或者RDN)是由标识名和它的父条目名连在一起构成的。
LDAP定义了一个查询和更新目录的操作,支持的操作包括从目录中添加和删除条目,更改已有的条目,更改已有的的名字。然而,大多数情况下LDAP是用于搜索目录中的信息的。通过指定搜索过滤器,LDAP可以在目录的相关部分搜索想相符的条目。满足过滤条件的每一个条目都能收到请求消息。
一些目录服务不提供保护,允许信息对任何人可见。LDAP提供了一套机制来对客户进行身份确认,或者让客户证明他拥有连接到服务器的身份,这无疑为对服务器进行全方位的访问控制铺平了道理,从而确保了服务器上所包含信息的安全。LDAP也支持privacy和integrity的安全服务。
❹ 在AD编程中,怎么设置搜索时的filter属性
你用什么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->mp; }$mesg = $ldap->unbind; # take down session
3.LDAP (Windows Apache Directory Studio)
(&(EnableEmail=True)(!(EnableEmailUserName=Jimmy*)))
4. 也有Windows 版本的ICE 或者LDAPsearch工具,命令参数和linux版本差不多,自己研究。