❶ 我想從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版本差不多,自己研究。