【问题标题】:SASL-GSSAPI on windows fails during bindWindows 上的 SASL-GSSAPI 在绑定期间失败
【发布时间】:2012-11-29 14:43:18
【问题描述】:

我在 RHEL 上尝试了下面的代码行,效果非常好。在 Linux 上,我只需要获得 Kerberos 票即可。

mport ldap
import ldap.sasl

conn=ldap.initialize('ldap://auto.test-auto.com',trace_level=2)

conn.set_option(ldap.OPT_PROTOCOL_VERSION, ldap.VERSION3)
conn.set_option(ldap.OPT_REFERRALS,0)
sasl = ldap.sasl.gssapi()
conn.sasl_interactive_bind_s('', sasl)

然后我将相同的内容复制到安装了 ActivePython-2.7","python-ldap-2.4.10","openssl-0.9.8o","setup-sasl-1.5.27" 的 Windows 2k3 服务器中。

Traceback (most recent call last):
  File "C:\susanta\test-sasl.py", line 10, in <module>
    conn.sasl_interactive_bind_s('', sasl)
  File "C:\Python27\lib\site-packages\ldap\ldapobject.py", line 229, in sasl_interactive_bind_s
    return self._ldap_call(self._l.sasl_interactive_bind_s,who,auth,RequestControlTuples(serverctrls),RequestControlTuples(clientctrls),sasl_flags)
  File "C:\Python27\lib\site-packages\ldap\ldapobject.py", line 99, in _ldap_call
    result = func(*args,**kwargs)
LOCAL_ERROR: {'desc': 'Local error'}

有人能帮帮我吗?

【问题讨论】:

    标签: python ldap sasl gssapi


    【解决方案1】:

    您是否使用 Cyrus SASL 作为后端?如果是这样,它会针对 MIT 或 Heimdal 进行编译。您无权访问 TGT。搜索注册表项:会话密钥 tgt。 但是如果您使用 GSS-API,Cyrus SASL 在 Windows 上并不能真正使用,除非您尝试 Kerberos for Windows。

    【讨论】:

    • 基本上我想使用同一域中的 Windows 客户端凭据连接到 Win AD。所以我正在使用 LDAP sasl 绑定。还有其他方法可以实现吗?我不明白 SSPI 绑定?我正在使用python ldap。问候苏珊塔
    • 我知道你想做什么。但这并不像在 Unix 上那么容易,Windows 上没有 GSS-API,只有 SSPI。 Cyrus SASL 不使用它。您可能也必须安装 MIT Kerberos (KfW)。
    • 嗨迈克尔,你的意思是如果我安装 MIT Kerberos,Cyrus SASL,它会工作吗?请您详细解释一下想法。我看到了一个链接 (groups.google.com/forum/?fromgroups=#!topic/…) 他们说这是从 win 2k3 开始的 fiex。
    • 该链接无法解决您的问题。您从石器时代找到了一个讨论 Windows SASL LDAP C API 的线程。你的情况不同。如果你说 SASL,你必须给它命名,比如 Cyrus SASL、GNU SASL、Windows SASL 等。首先,你必须弄清楚 ActivePython 使用什么 SASL 实现来进行 LDAP 通信。然后我们可以继续。也许使用Python ADSI 会更好。这是 MS 用于访问 Active Directory 的 API。它通过 SSPI 全面支持 Kerberos。
    • Python LDAP 使用 Cyrus SASL:stackoverflow.com/questions/11058480/…
    猜你喜欢
    • 1970-01-01
    • 2015-12-09
    • 2018-08-15
    • 2018-06-04
    • 1970-01-01
    • 2021-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多