使用powershell 重設大量用戶密碼

在管理帳戶相關作業中,以重設密碼這項作業來說通常可以直接用圖形工具處理即可,但是如果需要一次處理大量帳號重設密碼使用GUI我想應該管理員應該會想死吧!!

最近剛好需要處理到這個問題有找到網路上有人分享

使用powershell  set-adaccountpassword 來達成 語法如下

Set-ADAccountPassword [-Identity <adaccount>] [-NewPassword <SecurePwd>] -Reset

知道語法後如何大量修改首先可以將需要reset password 的ad帳號先整理至csv
可以參考下圖

接著使用下列script 就可以批次reset password

執行的方式 將下方程式碼存檔成.ps1

其中C:\Scripts\ADUsers.csv 這裡的路徑和csv 檔名可以自行定義)

script 最後的設定是將用戶設定登入後馬上修改密碼

Import-Module ActiveDirectory
# Set the new password
$newPassword = ConvertTo-SecureString -AsPlainText "Pa55w.rd" -Force
# Import users from CSV
Import-Csv "C:\Scripts\ADUsers.csv" | ForEach-Object {
 $samAccountName = $_."samAccountName"
 
# Reset user password.
Set-ADAccountPassword -Identity $samAccountName -NewPassword $newPassword -Reset
 
Set-AdUser -Identity $samAccountName -ChangePasswordAtLogon $true
Write-Host " AD Password has been reset for: "$samAccountName
}

執行方式如下圖

Script 出處連結
http://www.morgantechspace.com/2014/11/Reset-Bulk-AD-Users-Password-from-CSV-using-Powershell.html


本篇瀏覽人數: 5348
分類: powershell。這篇內容的永久連結

在〈使用powershell 重設大量用戶密碼〉中有 2 則留言

  1. Rock表示:

    你好,
    不知你有沒有遇到…
    user有AD+mail帳號,我的powershell如下,
    Get-ADUser -Identity “user1” | Set-ADUser -PasswordNeverExpires $False -ChangePasswordAtLogon $True

    指令下完、user重新登入電腦、重設密碼以後,手機mail仍是舊密碼,仍可收發mail….

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *