首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >python修改密码

python修改密码
EN

Stack Overflow用户
提问于 2016-06-03 16:10:08
回答 1查看 1.9K关注 0票数 1

我有一个Windows2012 R2服务器和一个LDAP服务器。我编写了一个python脚本来修改用户的密码(不是管理员的用户希望修改自己的密码。我还有另外一个函数,可以在你管理的时候修改密码,但我不想设置密码,但要修改它)。这是我的代码示例:

代码语言:javascript
运行
复制
#!/usr/bin/env python
#coding:utf-8

import ldap
import ldap.modlist as modlist

ldap.set_option(ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_NEVER)
ld = ldap.initialize('ldaps://xxx.xxx.xxx.xxx:636')
ld.simple_bind_s('XXXXXX@ad2012.local', 'XXXXXXX')

new = {'unicodePwd':[str('"XXXXXXXX"').decode('utf8').encode('utf-16-le')]}
old = {'unicodePwd':[str('"YYYYYYYY"').decode('utf8').encode('utf-16-le')]}

ldif = modlist.modifyModlist(old, new)
ld.modify_s('A DN',ldif)

但是当我运行它时,我有一个错误:

ldap.CONSTRAINT_VIOLATION:{'info':'0000052D: AtrErr: DSID-03191083,#1:\n\t0: 0000052D: DSID-03191083,问题1005 (CONSTRAINT_ATT_TYPE),数据0,Att9005a (unicodePwd)\n','desc':‘约束违反’}

我试过解码/编码或不使用。passwd_s()也不起作用。我在谷歌上搜索了很多,为其他人找到了很多解决方案,但没有为我工作。

如果有人能帮我的话,谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-03 16:51:15

您要关注的错误消息部分是'info': '0000052D。十六进制值0000052D转换为十进制1325年的系统错误代码。错误代码被记录为这里

ERROR_PASSWORD_RESTRICTION 1325 (0x52D) 无法更新密码。为新密码提供的值不符合域的长度、复杂性或历史要求。

因此,您要设置的新密码似乎以某种方式违反了分配给用户的密码策略。

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

https://stackoverflow.com/questions/37619024

复制
相关文章

相似问题

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