0
Я использую node.js, passport-ldapauth, ldapjs. Попытка поиска групп пользователей с использованием метода ldap «ismemberof».Как использовать «ismemberof» в поиске ldap
Это работает из командной строки:
# ldapsearch -H ldaps://ds-dev-nonsso.nam.nsroot.net:636 -D uid=emt,ou=funcids,ou=applications,o=company,c=us -w password -b ou=internal,o=company,c=us uid=sl15062 ismemberof # extended LDIF
#
# LDAPv3
# base <ou=internal,o=company,c=us> with scope subtree
# filter: uid=sl15062
# requesting: ismemberof
#
# 0000015062, internal, company, us
dn: id=0000015062,ou=internal,o=company,c=us
ismemberof: cn=emt-write-MP,ou=groups,o= company,c=us
ismemberof: cn=Ctipv-CTI-Webi-Viewer-MP,ou=groups,o= company,c=us
ismemberof: cn=ccsvc_write,ou=groups,o= company,c=us
ismemberof: cn=ccsvc_read,ou=groups,o= company,c=us
ismemberof: cn=160548_wasadmin,ou=groups,o= company,c=us
ismemberof: cn=150097_wpsadmin,ou=groups,o= company,c=us
# search result
search: 2
result: 0 Success
# numResponses: 2
Как я могу превратить это в фильтр поиска, как это?
searchFilter: '(&(uid={{username}})(objectclass=person))',
Пробовал разные комбо, такие как: '(& uid = {{username}}) (objectclass = person) (ismemberof = *))', но не повезло. Он просто возвращает объект пользователя, я не вижу ни одной из групп. –
'ismemberof' - это эксплуатационный атрибут. Он не возвращается, если вы специально его не просите. – EJP
Спасибо! Это сработало. –