需求:非常普通的一个需求,就是给AD用户修改密码,但是问题是量太大了。所以写了个脚本

?

1
2
3
4
5
6
7
8
cls
$pass = ConvertTo-SecureString -AsPlainText 12333333344.abc -Force
  
Import-Csv -Path d:\pp.csv | foreach {
Get-ADUser -Identity $_.name|Set-ADAccountPassword -Reset -NewPassword $pass
Get-ADUser -Identity $_.name|Set-ADUser -ChangePasswordAtLogon $false
$_.name
}

这个脚本运行,需要本地装有Active Directory的模块,不需要手动导入,自动挂载。
以上脚本改密码,也设置下次登录是否需要更改密码。
在foreach循环中,可以增加多个针对用户名的操作,比如修改属性,账户过期时间什么的。

其中需要用到的pp.csv文件内容格式如下

?

1
2
3
name
wangerxiao
dongcunrui