Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PowerShell脚本计划任务基于设置的密码更改本地用户密码值_Powershell_Scheduled Tasks_Change Password - Fatal编程技术网

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

PowerShell脚本计划任务基于设置的密码更改本地用户密码值,powershell,scheduled-tasks,change-password,Powershell,Scheduled Tasks,Change Password,我正在编写一个在任务调度器中运行的PowerShell脚本。 我希望它的工作方式是: 默认值设置为在下次登录时强制用户更改密码: net用户su/logonpasswordchg:yes 现在代码应该是这样的: $password=Azerty123! 如果$password与$password不同 将密码从“用户下次登录时必须更改密码”切换到“密码永不过期” 否则请保留值以在下次登录时更改密码 经过多次测试后,我认为需要根据当前密码切换以下2个值 Set LocalUser-Name“su”

我正在编写一个在任务调度器中运行的PowerShell脚本。 我希望它的工作方式是:

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

现在代码应该是这样的:

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

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

  • Set LocalUser-Name“su”-PasswordNeverExpires:$true
  • Set LocalUser-Name“su”-PasswordNeverExpires:$false
  • net用户su/logonpasswordchg:yes
  • net用户su/logonpasswordchg:no
  • 基本上,脚本与Intune一起部署,创建任务计划程序,它每天检查一次密码值,如果密码已更改,密码值将更改为永不过期,只要密码从未更改,下次登录时将其保留为更改密码。
    有人能帮我吗?对不起,我的解释很笨拙

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

    net accounts /maxpwage:0
    

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

    您如何知道用户“su”的密码?您是否有其他用户要求密码过期?作为替代方法,您可以使用本地GPO?本地计算机策略–>计算机配置–>Windows设置–>安全设置–>帐户策略–>密码策略将“最大密码期限”设置为“0”。很遗憾,否,最终目标是通过Intune将此脚本部署到Intunewin包中。除非有一种方法可以在Intune中使用您描述的GPO进行类似的操作,否则这可能会起作用,但我在这方面没有发现任何东西。我对Intune没有太多的了解,但似乎您可以在那里进行本地GPO设置:。或者,您可以在1-off脚本
    net accounts/maxpwage:0
    中调用它。但在我看来,政策方针更为确定opinion@andr3yk谢谢你的回复,它实际上帮助了我很多,我按照你的建议使用了一个网络帐户命令,它完成了任务。你能把它贴出来作为对这个话题的实际回应,这样我就可以把这个问题解决了吗?最好的。