【问题标题】:Operations error : while querying ldap_search_ext_s in Objective-C操作错误:在 Objective-C 中查询 ldap_search_ext_s 时
【发布时间】:2012-08-04 11:54:32
【问题描述】:

我正在使用 ldap 进行用户身份验证,如此链接中所述。 http://www-archive.mozilla.org/directory/csdk-docs/writing.htm 在这里,我在 ldap_search_ext_s 调用时收到“操作错误”。谁能告诉我为了从 Active Directory 获取用户信息需要做哪些更改。

注意:我不想在绑定时输入 dc 名称和密码。由于机器将在域中没有管理员凭据的普通用户帐户(域用户)下运行。请让我知道在这种情况下如何进行绑定。

我的机器详情: Mac 狮子,64 位。 我正在尝试连接到 Windows Active Directory。

谢谢, 陶西夫。

【问题讨论】:

    标签: objective-c active-directory ldap openldap


    【解决方案1】:

    在大多数情况下连接到 Windows Active Directory 服务器时,您需要使用有效的用户名和密码进行绑定。

    当您执行ldap_simple_bind_s() 时,需要替换两个NULL 参数 - 第一个参数为执行绑定的用户的DN,第二个参数为该DN 的密码.

    this answer中有更多链接详情

    【讨论】:

    • 嗨Petesh,非常感谢您的宝贵指导。在我的情况下,客户端将不知道域控制器的密码,因为登录的用户将是普通用户。我仍然想验证用户。那么是否有任何选项在绑定时无需提供密码和 DN 名称。请指导我。
    • 您需要访问从 Active Directory 服务器提供的数据的权限 - 通常,对于 Linux 互操作性,会创建一个仅支持此功能的“仅搜索”帐户。您可以使您的活动目录不安全,这样您就可以在没有用户名/密码的情况下进行搜索,但出于安全原因通常不会这样做。
    • 如果您遵循windowsitpro.com/article/ldap/… 上的详细信息,它应该允许您与 Windows 服务器进行匿名 ldap 连接(我尚未针对 2008 年对其进行测试)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-18
    • 1970-01-01
    • 2017-04-16
    • 2014-03-05
    • 2022-01-02
    • 1970-01-01
    相关资源
    最近更新 更多