我用下面的查詢來查找組的每個用戶的成員:期廣義LDAP查詢組
(&(objectClass=group)(|(member=cn=UID,OU=ServiceAccounts,OU=MC,DC=ads,DC=myCompany,DC=com,DC=au)(member=cn=UID,OU=BTLY,OU=Sites,OU=MC,DC=ads,DC=myCompany,DC=com,DC=au)))
這個查詢工作,並運行使用下列基本DN:
OU=MC,DC=ads,DC=myCompany,DC=com,DC=au
我與查詢幾個問題:
- 我不喜歡使用OR運算符來查找服務帳戶用戶和BTLY用戶。
- 我不想硬編碼BTLY網站,也有其他人。
理想情況下,我只是想有作爲查詢:
(&(objectClass=group)(|(member=cn=UID,OU=MC,DC=ads,DC=myCompany,DC=com,DC=au))
這樣,我不關心用戶帳戶是服務帳戶,也不帳戶所屬的網站至。不幸的是,該查詢不起作用。
有人能幫我推廣LDAP查詢嗎?我有點新手,所以我很可能錯過了一些完全明顯的東西!
謝謝!
感謝您的回覆。你所說的話是有道理的,但不幸的是,它對我無能爲力。我們使用的是GlassFish(一種Java應用服務器),並將其配置爲指向本地AD服務器。通常情況下,一個人可以告訴GlassFish中如何獲取用戶,如
(&(objectCategory=user)(CN=UID))
和GlassFish將拿起所有組(也許通過使用memberOf
屬性)。
這次我們使用了一個不同的AD服務器,它託管着不同的用戶目錄。 GlassFish無法自行檢索組。因此,我們可以爲GlassFish提供一個自定義查詢來查找組。在這個領域,我把我發佈的查詢的工作,但醜陋和冗長。
我很想能夠做到的是:
(&(objectClass=group)(member=cn=UID))
但這不起作用。
有沒有辦法做到這一點?
謝謝, Muel。
有趣的是,我昨天嘗試了通配符沒有成功。我也嘗試使用子查詢,這也不起作用。我從那以後讀了LDAP不支持這樣的查詢。感謝MS鏈接,閱讀一些明確的內容是很好的!我將把這個問題留在稍微長一點的問題上。:) – Muel