【发布时间】:2014-01-31 10:05:10
【问题描述】:
我希望能够测试到主机和端口的连接是否有效。
我正在使用当前行:
ldapObject = ldap.open(host="host", port=389)
这似乎返回了一个实例。我需要确定它是否可以找到主机?
有什么建议吗?
【问题讨论】:
-
什么是有效连接?
标签: python testing active-directory connection ldap
我希望能够测试到主机和端口的连接是否有效。
我正在使用当前行:
ldapObject = ldap.open(host="host", port=389)
这似乎返回了一个实例。我需要确定它是否可以找到主机?
有什么建议吗?
【问题讨论】:
标签: python testing active-directory connection ldap
open 已弃用。 这是一个工作示例。看看这是否有帮助。
def ldap_initialize(remote, port, user, password, use_ssl=False, timeout=None):
prefix = 'ldap'
if use_ssl is True:
prefix = 'ldaps'
# ask ldap to ignore certificate errors
ldap.set_option(ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_NEVER)
if timeout:
ldap.set_option(ldap.OPT_NETWORK_TIMEOUT, timeout)
ldap.set_option(ldap.OPT_REFERRALS, ldap.OPT_OFF)
server = prefix + '://' + remote + ':' + '%s' % port
conn = ldap.initialize(server)
conn.simple_bind_s(user, password)
return conn
【讨论】:
找到解决办法:
import ldap
try:
ldapObject = ldap.open(host="host", port=389)
ldapObject .simple_bind_s()
except ldap.SERVER_DOWN:
print("Failed")
【讨论】: