Windows上的SASL-GSSAPI在绑定期间失败

时间:2012-11-29 14:43:18

标签: python ldap sasl gssapi

我在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'}

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

您使用Cyrus SASL作为后端吗?如果是这样的话,它会针对麻省理工学院或海姆达尔进行编辑。您无权访问TGT。搜索注册表项:session key tgt。 但是如果您使用GSS-API,Cyrus SASL在Windows上并不可用,除非您尝试使用Kerberos for Windows。