添加没有 "User must change password at next logon" 的新本地用户

Add New Local User Without "User must change password at next logon"

我正在为一所小型私立学校协助计算机。在每台计算机上,我都创建了一个管理员帐户和一个学生帐户。后者几乎没有做任何事情的权限。当学生需要一台电脑来做家庭作业时,我们会把这些电脑借给他们,我正试图找出一种方法来快速删除这个帐户,然后再将其添加回去,这样就可以使用 none 以前用户的历史记录。我发现我可以删除 Powershell 中的帐户:

Remove-LocalUser -Name "Student"

我还发现我可以添加用户:

New-LocalUser -Name "Student" -NoPassword -UserMayNotChangePassword

我不想让这个帐号有密码,但我也不想让用户给它设置密码。但是当我创建它时,“用户必须在下次登录时更改密码”框被选中。我没有看到取消选中它的开关,我很好奇是否有人知道如何实现它。

此外,如果有帮助,我们正在使用 Windows 10 Pro。

这应该有效

New-LocalUser -Name "Student" -NoPassword -UserMayNotChangePassword | Set-LocalUser -PasswordNeverExpires $false

旧方法是一种方法 :)(注意 WinNT 名字区分大小写,所以不要输入 'winnt' 或其他任何方式)

New-LocalUser "Student" -NoPassword  -UserMayNotChangePassword

# WinNT://. is for localhost, use WinNT://MyComp for remote computer
$locUser = [ADSI]"WinNT://./Student,User
$locUser.PasswordExpired = 0
$locUser.SetInfo()

# Optional, but by default passwords expire after 42 days,
# it can be done with WinNT, but easier to read like this
Set-LocalUser "Student" -PasswordNeverExpires $true

根据:MS Docs

New-LocalUser  
   [-AccountExpires <DateTime>]
   [-AccountNeverExpires]  
   [-Description <String>]  
   [-Disabled]  
   [-FullName <String>]  
   [-Name] <String>  
   -Password <SecureString>  
   [-PasswordNeverExpires]  
   [-UserMayNotChangePassword]  
   [-WhatIf]  
   [-Confirm]  
   [<CommonParameters>]  

这应该有效

$Password = Read-Host -AsSecureString
New-LocalUser -Name "Test" -Password $password -UserMayNotChangePassword -PasswordNeverExpires

我猜,因为它没有密码,它必须向用户询问它。

如果“无密码”策略的原因是“对用户来说简单”,请查看自动登录。