gpt4 book ai didi

c# - 具有 MemberOf 属性的 LDAP DirectorySearcher

转载 作者:行者123 更新时间:2023-11-30 13:34:56 25 4
gpt4 key购买 nike

我想找到属于某个 OU 中某个组的所有用户,因此我的过滤器看起来像这样:

(&(objectClass=user)(memberOf=*OU=something,OU=yep,DC=dev,DC=local))

有没有办法在带有通配符的 memberof 属性上运行目录搜索器?

最佳答案

您需要将要搜索的 OU 设置为 DirectorySearcher 的根目录:

DirectoryEntry myOU = new DirectoryEntry("OU=something,OU=yep,DC=dev,DC=local");
DirectorySearcher srch = new DirectorySearcher(myOU);
srch.SearchScope = SearchScope.Subtree;

然后只使用 objectCategory=person 作为您的过滤器 - 我会使用 objectCategory,它是单值和索引的,因此速度快,而不是 objectClass(它是多值的,没有索引):

srch.Filter = "(objectCategory=person)";

如果除了作为 OU 的一部分之外,您还想检查组中的成员身份,您可以将其作为成员添加到过滤器中:

srch.Filter = "(&(objectCategory=person)(memberOf=cn=Group,ou=yep,dc=dev,dc=local))";

不完全确定通配符 - 一般来说,LDAP 搜索过滤器确实支持通配符,但我对在 RDN 中使用通配符有点犹豫,就像这里的这个组 DN。

马克

关于c# - 具有 MemberOf 属性的 LDAP DirectorySearcher,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1510802/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com