Como posso alterar a senha do usuário do domínio (Windows Active Directory) usando Python?

Como posso alterar a senha de um usuário de domínio com Python? Eu tenho os módulos LDAP a bordo, mas não tenho solução. Consegui consultar as configurações atuais via LDAP, mas como modificá-las?

import ldap
import sys

host = 'ldap://10.172.0.79'

con = ldap.initialize(host)
BIND_DN = "[email protected]"
BIND_PASS = "a-123456"
con.set_option( ldap.OPT_X_TLS_DEMAND, True )
con.set_option( ldap.OPT_DEBUG_LEVEL, 255 )

PASSWORD_ATTR = "unicodePwd"
username="bizadmin"
user_dn = "CN=%s,OU=User,OU=biztalk,DC=biz-talk,DC=com" % username
password = 'New12345'

# Set AD password
unicode_pass = unicode("\"" + password + "\"", "iso-8859-1")
password_value = unicode_pass.encode("utf-16-le")
add_pass = [(ldap.MOD_REPLACE, PASSWORD_ATTR, [password_value])]

# Replace password
try:
    con.modify_s(user_dn, add_pass)
    print "Active Directory password for", username, "was set successfully!"
except ldap.LDAPError, e:
    sys.stderr.write('Error setting AD password for: ' + username + '\n')
    sys.stderr.write('Message: ' + str(e) + '\n')
    sys.exit(1)

erro

depurador pydev: iniciando

Erro ao definir a senha do AD para: bizadmin

Mensagem: {'desc': "Não é possível entrar em contato com o servidor LDAP"}

Senha de usuário do domínio de alteração do Python (Microsoft Active Directory).

... requer serviços de certificação entre python e domínio?

Você poderia ter boas maneiras de lidar com isso?

Obrigado!

questionAnswers(3)

yourAnswerToTheQuestion