如何使用Python在Windows中修改密码到期?

对于使用Python的本地用户,如何在Windows XP上将密码过期修改为“never”?我有PyWIN和WMI模块,但没有解决方案.我设法通过WMI(基于Win32_UserAccount类)查询当前设置,但是如何修改它?

解决方法:

如果您使用ActvePython针对Active Directory运行python脚本,那么您可以使用以下内容

import win32com.client
ads = win32com.client.dispatch('ADsNameSpaces')
user = ads.getobject("", "WinNT://DOMAIN/username,user")
user.Getinfo()
user.Put('userAccountControl', 65536 | user.Get('userAccountControl'))
user.Setinfo()

但是如果你的python在unix下运行,你需要两件事来与Active Directory对话:Kerberos和LDAP.获得与Active Directory服务器的SASL(GSSAPI(KRB5))经过身份验证的LDAP连接后,即可访问目标用户的“userAccountControl”属性.

userAccountControl是一个整数属性,被视为位字段,您必须在其上设置DONT EXPIRE PASSWORD位.有关位值,请参见this KB article.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...