微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PowerShell 脚本计划任务根据设置的密码更改本地用户密码值

如何解决PowerShell 脚本计划任务根据设置的密码更改本地用户密码值

我正在编写一个可以在任务计划程序中运行的 PowerShell 脚本。 我希望它的工作方式是:

认值设置为强制用户在下次登录时更改密码: net user su /logonpasswordchg:yes

user must change password at next logon

现在代码将类似于:

$password = Azerty123! 如果 $password 与 $password 不同 将密码从“用户下次登录时必须更改密码”切换为“密码永不过期” 否则留下值以在下次登录时更改密码

经过多次测试,我认为需要根据当前密码切换以下 2 个值

  1. Set-LocalUser -Name "su" -PasswordNeverExpires:$true
  2. Set-LocalUser -Name "su" -PasswordNeverExpires:$false
  3. net user su /logonpasswordchg:yes
  4. net user su /logonpasswordchg:no

脚本基本上是用 Intune 部署的,创建了一个 Task Scheduler,它会每天检查一次密码值,如果密码已更改,则将密码值更改为永不过期,只要密码为从未更改,将其保留为下次登录时更改密码。 谁可以帮我这个事 ?抱歉我笨拙的解释

解决方法

替代方法可能是在 Windows 系统上全局更改密码到期设置。 这将适用于所有用户,并且可以在特定用户更改其密码之前完成。可以通过运行以下命令来完成:

net accounts /maxpwage:0

注意:查看答案的评论部分以深入讨论其他方法

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。