【问题标题】:LdapConnection Vs DirectoryEntryLdapConnection 与 DirectoryEntry
【发布时间】:2013-10-13 20:54:29
【问题描述】:

谁能解释在 ActiveDirectory 中使用 LdapConnection/SearchRequest 和 DirectoryEntry/DirectorySearcher 搜索用户的区别。

哪一个最适合与 AD 交互?

【问题讨论】:

  • 这是个好问题。我一直将 DirectoryEntry 用于 AD,将 LdapConnection 用于通用 Ldap 解决方案,但我从未比较过它们。
  • @empi 嗨,我需要你的帮助,你能帮忙吗? LdapConnection 与 DirectoryEntry 的东西

标签: c# active-directory directoryentry


【解决方案1】:

在大多数情况下,您应该使用 DirectoryEntry/DirectorySearcher(System.DirectoryServices 或 S.DS)与 AD 交互。它使您可以用更少的代码更轻松地完成工作。但是对于 LdapConnection/SearchRequest(System.DirectoryServices.Protocols 或 S.DS.P),它提供了更多控制,因为它提供了较低级别的 LDAP 访问。对于 AD 以外的 LDAP 兼容目录,最好使用 SDS。

使用 S.DS.P,与 S.DS 相比,通常您需要编写更多代码才能实现相同的目标。

例如,对于 S.DS.P 中的分页搜索,您需要处理每页结果的请求和响应。但是在SDS中,您只需要设置DirectorySearcher.PageSize,然后您就可以从DirectorySearcher.FindAll()中获得所有页面中的所有结果。

有些事情您必须使用 S.DS.P,例如虚拟根搜索,或者您想要手动处理“更多可用数据”。但这些情况并不常见,至少在我多年的 S.DS 编码中不需要。

【讨论】:

    猜你喜欢
    • 2013-11-04
    • 1970-01-01
    • 2021-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多