首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用python-ldap更改密码

使用python-ldap更改密码
EN

Stack Overflow用户
提问于 2016-06-28 00:31:17
回答 2查看 6.4K关注 0票数 5

我想更改ldap用户的密码。脚本是:

代码语言:javascript
复制
def changePassword(url,binddn,pw, newpw):
l = ldap.initialize(url)
ldap.
try:
    l.protocol_version=ldap.VERSION3
    l.simple_bind_s(binddn,pw)
except:
    print "Error Bind in changePassword"
    sys.exit(0)

old = {'userPassword':pw}
new = {'userPassword':newpw}
ldif = modlist.modifyModlist(old,new)
try:
    l.modify_s(binddn,ldif)
    l.unbind_s()
except:
    print "error"

但是当我调用这个函数时,我收到"error“。我的LDAP有当我更改密码时需要当前密码的PPolicy。

如何使用此PPolicy更改密码??

有谁可以帮我??

先谢谢你,达里奥

EN

回答 2

Stack Overflow用户

发布于 2019-05-30 02:16:00

对于LDAPv3服务器,通常不应该直接修改/替换用户密码,而应该使用LDAPv3密码修改操作。使用python-ldap时,这是通过passwd/passwd_s完成的。例如:

代码语言:javascript
复制
import ldap
server = 'localhost'
l = ldap.initialize('ldap://%s' % server)
l.simple_bind_s("cn=Marice McCaugherty,ou=Product Testing,dc=example,dc=com", "ytrehguaCc")
l.passwd_s("cn=Marice McCaugherty,ou=Product Testing,dc=example,dc=com", "ytrehguaCc", "secret")

将作为列出的用户DN进行绑定,并将其密码从"ytrehguaCc“更改为"secret”。

票数 1
EN

Stack Overflow用户

发布于 2017-07-26 00:44:50

也许你必须在modify_s中直接使用下面的modlist [(ldap.MOD_REPLACE,'userPassword',newpasswd )]

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38058966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档