创建一个AD帐户并将密码设置为45天后到期

时间:2016-03-16 00:56:15

标签: windows vbscript active-directory windows-server-2012-r2

我需要一些现有脚本中的行的帮助,该行创建用户帐户并将密码设置为非过期(66048)。

我正在尝试修改代码,因此密码到期时间设置为45天,但无法找到有关如何执行此操作的任何信息。

脚本中的当前代码行如下:

objUser.userAccountControl = 66048  ' normal and never expires

objUser.PasswordRequired = True
objUser.SetPassword strPassword

For intLoop = LBound(aryGroups) To UBound(aryGroups)
    Set objGroup = GetObject("LDAP://" & aryGroups(intLoop))

    objGroup.Add objUser.ADsPath

有没有办法将objUser.userAccountControl行中的代码从 66048 更改为允许我这样做的其他内容?我读过的所有内容都指向密码设置为“不需要”,“非过期”或“无法更改”。

我正在尝试删除管理员必须在脚本运行后手动将密码更改为“过期”的过程。

我们目前正在运行Windows AD的2012 R2版本。

1 个答案:

答案 0 :(得分:1)

UserAccountControl属性可以控制密码是否过期,但到期时间是由上次设置密码和通过group policy定义的密码到期时间(通常是默认域)定义的策略)。

您需要从userAccountControl属性中删除DONT_EXPIRE_PASSWORD flag,否则即使设置了密码策略,密码仍然不会过期:

objUser.userAccountControl = 512