C# Active Directory用户和计算机的LDAP筛选器字符串“查找”对话框

C# Active Directory用户和计算机的LDAP筛选器字符串“查找”对话框,c#,active-directory,ldap,C#,Active Directory,Ldap,在Active Directory用户和计算机ADUC中,用户可以右键单击OU并选择“查找”以从OU中的所有对象进行搜索。在第一个选项卡上,用户将看到一个用于简单查询的名称和描述字段。但是,“名称”字段似乎针对AD中的多个字段进行搜索,例如canonicalName、sAMAccountName和DifferentizedName。我在MSDN上找不到任何文档,其中列出了以这种方式搜索ADUC时使用的字段的完整列表 我现在正在编写一个C应用程序,其中的一个要求是搜索AD对象。由于它解析用户输入,

在Active Directory用户和计算机ADUC中,用户可以右键单击OU并选择“查找”以从OU中的所有对象进行搜索。在第一个选项卡上,用户将看到一个用于简单查询的名称和描述字段。但是,“名称”字段似乎针对AD中的多个字段进行搜索,例如canonicalName、sAMAccountName和DifferentizedName。我在MSDN上找不到任何文档,其中列出了以这种方式搜索ADUC时使用的字段的完整列表

我现在正在编写一个C应用程序,其中的一个要求是搜索AD对象。由于它解析用户输入,不同的用户喜欢不同的标识符,因此对象的名称可能是使用ADUC的find对话框返回对象的任何内容。我使用System.DirectoryServices.DirectorySearcher来实现这一点,但我似乎无法复制ADUC的精确搜索行为


ADUC的Name字段查找对话查询所针对的确切字段,以及等效的LDAP筛选器字符串是什么?

根据Esteban的建议,我运行了Sysinternal提供的,并提取了此筛选器字符串:

&&|&objectCategory=personobjectSid=!samAccountType:1.2.840.113556.1.4.804:=3&objectCategory=person!objectSid=&objectCategory=GroupType:1.2.840.113556.1.4.804:=14anr=MyObjectID*

但是,如果您不关心类型,并且愿意查看所有对象,这似乎仍然有效:


&anr=MyObjectID*

我不知道过滤器是什么,但有一个工具似乎允许您监视向Active Directory请求的内容:。您可以尝试监视这些RequestsHanks的搜索筛选器!这对我很有用,并且为未来提供了一个很棒的工具。