Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Active directory python ldap更改问题_Active Directory_Ldap_Python Ldap - Fatal编程技术网

Active directory python ldap更改问题

Active directory python ldap更改问题,active-directory,ldap,python-ldap,Active Directory,Ldap,Python Ldap,我已使用以下代码管理不同用户的广告属性: l = ldap.initialize('ldap://172.25.1.2') l.simple_bind_s(admin_dn, admin_pw) user_dn="dn_here" change_attr = [(ldap.MOD_REPLACE, 'attr_to_change', new_value)] l.modify_s(user_dn,change_attr) l.unbind

我已使用以下代码管理不同用户的广告属性:

l = ldap.initialize('ldap://172.25.1.2')        
    l.simple_bind_s(admin_dn, admin_pw)

    user_dn="dn_here"
    change_attr = [(ldap.MOD_REPLACE, 'attr_to_change', new_value)]

    l.modify_s(user_dn,change_attr)
    l.unbind_s()
除unicodePwd外,它适用于所有必要的属性。 在寻找解决方案后,我发现应该使用ldaps连接和端口636更改unicodePwd (). 所以我试着用这个例子:

    ldap.set_option(ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_NEVER)
    l = ldap.initialize('ldaps://172.25.1.2:636')
    l.set_option(ldap.OPT_REFERRALS, 0)
    l.set_option(ldap.OPT_PROTOCOL_VERSION, 3)
    l.set_option(ldap.OPT_X_TLS,ldap.OPT_X_TLS_DEMAND)
    l.set_option( ldap.OPT_X_TLS_DEMAND, True )
    l.set_option( ldap.OPT_DEBUG_LEVEL, 255 )
    l.simple_bind_s(admin_dn, admin_pw)
    #change unicodePwdCOde here
    l.unbind_s()
但有一个错误:

ldap.SERVER_DOWN: {'desc': "Can't contact LDAP server"}
它应该在我的代码中有任何解决方案,还是应该从AD服务器配置中修复? 谢谢你的帮助。
Sry检查语法错误。

您的Active Directory是否启用了SSL?您是否尝试通过telnet连接到636端口?我将在周一会见我们的广告所有者时进行检查)您的Active Directory是否启用了SSL?您是否尝试过通过telnet连接636端口?我将在周一会见我们的广告负责人时进行检查)