在我們的 IIS Application Pool中,我們可能會指定特定的User Account來執行Application Pool Operation 當該User Account密碼被change時,Application Pool Account 也應該要一併換新密碼,以下是用Power Shell 自動更新Application Pool User Account Password Script,

Import-Module WebAdministration

 

$applicationPools = Get-ChildItem IIS:\AppPools | where { $_.processModel.userName -eq "domain\username" }

 

foreach($pool in $applicationPools)

{

    $pool.processModel.userName = "domain\username"

    $pool.processModel.password = "newpassword"

    $pool.processModel.identityType = 3

    $pool | Set-Item

}

 

Write-Host "Application pool passwords updated..." -ForegroundColor Magenta

Write-Host "" 

 

 

首先,應該先Import WebAdministration Module,

Import-Module WebAdministration

 

接著利用 user name key 列出IIS中所有用該user作為application pool operatiorapplication pool:

$applicationPools = Get-ChildItem IIS:\AppPools | where { $_.processModel.userName -eq "domain\username" }

 

 

//$_ : 每一個迭代的Application pool object 所代表的變數。

 

接下來更改所有用該user accountapplication pool中的 user password,

foreach($pool in $applicationPools)

{

    $pool.processModel.userName = "domain\username"

    $pool.processModel.password = "newpassword"

    $pool.processModel.identityType = 3

    $pool | Set-Item

}

 

 

以上です。

 

[Reference]

  1. http://adicodes.com/powershell-update-all-application-pool-identity-user-password/

 

 

2019425日星期四

arrow
arrow

    jackterrylau 發表在 痞客邦 留言(0) 人氣()