Python 3.5,ldap3和Modify_password() [英] Python 3.5, ldap3 and modify_password()

查看:629
本文介绍了Python 3.5,ldap3和Modify_password()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在努力尝试通过脚本发送请求以更新我自己的密码.这是代码:

I've been pulling my hair out trying to send a request to update my own password via a script. here is the code:

#!/usr/bin/python3.5

from ldap3 import Server, Connection, NTLM, ALL

server = Server('ldap://192.168.0.80', use_ssl=True)

conn = Connection(server, user="local\\dctest", password="Pa55word1", authentication=NTLM, auto_bind=True)

dn = "CN=dctest,CN=Users,DC=home,DC=local"

conn.extend.microsoft.modify_password(dn, new_password="Pa55word2", old_password="Pa55word1")

我得到的错误是:

{'dn':'','type':'modifyResponse','description': 'unwillingToPerform','referrals':无,'result':53,'message': '00002077:SvcErr:DSID-03190E44,问题5003(WILL_NOT_PERFORM), 数据0 \ n \ x00'}

{'dn': '', 'type': 'modifyResponse', 'description': 'unwillingToPerform', 'referrals': None, 'result': 53, 'message': '00002077: SvcErr: DSID-03190E44, problem 5003 (WILL_NOT_PERFORM), data 0\n\x00'}

知道我在做什么错吗?

我拥有DC的完全访问权限,并且确保密码正确无误.我已经阅读了所有文档,但无法理解.

I have full access to the DC and I've made sure that the passwords are correct etc. I've read all the docs and just can't get my head around it.

任何帮助都会很棒!

推荐答案

好,谢谢大家的帮助,也感谢github上的开发人员.

OK thank you to everyone for your help, and the developers on github.

我最终用来完成这项工作的代码是...

the code i used to make this work in the end was...

from ldap3 import Server, Connection

server = Server('ldaps://<AD server address>', use_ssl=True)
conn = Connection(server, user="<domain>\\<username>", password="<current password>", auto_bind=True)

dn = 'CN=<username>,OU=Users,DC=<dominaname>'

res = conn.extend.microsoft.modify_password(dn, old_password='<current password>', new_password='<new password>')
print(res)

以为我会发布有效的解决方案,因为互联网上似乎没有任何内容!!上帝加速了我的同胞们.

Thought i'd post the working solution as there doesn't seem to be any on the internets!! God speed my fellow devops people.

这篇关于Python 3.5,ldap3和Modify_password()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆