我一直在尝试自动化Web应用程序的设置,并使用应用程序池标识适当地配置IIS,但困难重重。 我正在使用PowerShell编写的Web应用程序部署脚本来完成这项工作。我的要求是需要我的PowerShell脚本将应用程序池身份用户设置为特定的服务帐户mydomain\svcuser和密码。以下是示例代码:
$pool = New-Item "IIS:\AppPools\MyAppPool" -Force
$svcuser = "mydomain\svcuser"
$pool.processModel.userName = $svcuser
$password = "somepassword"
$pool.processModel.password = $password
$pool.processModel.identityType = 3
$pool | Set-Item -ErrorAction Stop
当我运行这段代码时,一切似乎都正常——没有出现错误,并且应用程序标识用户名出现在IIS中——但由于某种原因密码没有被正确地设置,如果有设置的话,我无法验证其是否已被设置。 我可以得出结论,即使已经设置了密码,它也不正确。 直到我手动进入IIS并输入密码,它才能对导致应用程序池用户进行身份验证。 因此,部署到Web服务器后应用程序失败,并需要手动干预。我错过了什么吗?