Powershell 2.0 dsmod用户pwd在Powershell脚本中失败,参数不正确
有人知道PS脚本中的以下行失败的原因吗:Powershell 2.0 dsmod用户pwd在Powershell脚本中失败,参数不正确,powershell-2.0,Powershell 2.0,有人知道PS脚本中的以下行失败的原因吗: dsmod user $dn -pwd $password -mustchpwd no 我已验证$dn有效,$password符合历史记录和复杂性要求$密码不包含任何未转义的非法字符 以下是让这一切变得奇怪的原因: 相同的确切命令(替换变量)在 交互式PS终端 接下来在脚本中立即调用另一个dsmod以启用标识:例如dsmod user$dn-disabled no。这是没有问题的,所以我知道$dn变量是有效的 正如所写的一样,相同的命令在另一个脚本中
dsmod user $dn -pwd $password -mustchpwd no
我已验证$dn有效,$password符合历史记录和复杂性要求$密码不包含任何未转义的非法字符
以下是让这一切变得奇怪的原因:
- 相同的确切命令(替换变量)在 交互式PS终端
- 接下来在脚本中立即调用另一个dsmod以启用标识:例如
。这是没有问题的,所以我知道$dn变量是有效的dsmod user$dn-disabled no
- 正如所写的一样,相同的命令在另一个脚本中工作,该脚本的唯一目的是重置密码
- 这适用于我们的一些客户机系统,但不适用于所有客户机系统李>
考虑到您已使用powershell对此进行了标记,我对您为什么不使用
Set-ADUser
和Set-AdaAccountPassword
cmdlet感到有点困惑
Set-ADAccountPassword –Identity $dn -Reset -NewPassword (ConvertTo-SecureString -AsPlainText $password –Force);
Set-ADUser -Identity $dn -ChangePasswordAtNextLogon;
在这种情况下,PowerShell脚本正在执行的上下文帐户没有足够的提升权限来执行该操作。将帐户提升到Administrators组可消除该行为