通过ADMT工具迁移完AD账户后,并不是马上结束了,还有很多工作需要去做。比如账号UPN设置(如DC中多个域名后缀),启用账户,密码过期设置等。

接下来提供相关的脚本,进行批量设置。

  • 修改UPN

Import-Module activedirectory

$users = Get-ADUser -SearchBase "ou=ttemp,ou=tt,ou=staff,dc=hello,dc=com" -Filter *

foreach($i in $users){
  $id = $i.SamAccountName 
  #$upn = $i.UserPrincipalName
  #Write-Output $id,$upn
 
  Set-ADUser -Identity $id -UserPrincipalName "$id@hello.com"

}

也可以加一些过滤条件

$users = Get-ADUser -SearchBase "ou=ttempou=tt,ou=staff,dc=hello,dc=com" -Filter * -Properties *| ? {$_.whencreated -gt '2022/04/05'}

foreach($i in $users){
  $id = $i.SamAccountName 
  #$upn = $i.UserPrincipalName
  #Write-Output $id,$upn
 
  Set-ADUser -Identity $id -UserPrincipalName "$id@hello.com"

}

  • 取消首次登陆修改密码选项

Get-ADUser -Filter {pwdLastSet -eq 0} -SearchBase  "ou=ttemp,ou=tt,ou=staff,dc=hello,dc=com" | Set-ADUser -ChangePasswordAtLogon $false

  • 某些功能性账号密码永不过期(在特定OU下)

Get-ADUser -Filter * -SearchBase  "ou=Service_Accounts,ou=tt,ou=staff,dc=hello,dc=com"  | Set-ADUser -PasswordNeverExpires $true