私は、Web アプリケーションのセットアップを自動化し、アプリケーション プール ID を使用して IIS を適切に構成するのに非常に苦労しています。これは、PowerShell で記述された Web アプリケーション展開スクリプトで実行しています。私の要件は、アプリケーション プール ID ユーザーを特定のサービス アカウント mydomain\svcuser とパスワードに設定するために、PowerShell スクリプトが必要なことです。サンプルコードは次のとおりです。
$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
これを実行すると、すべてが正しく機能しているように見えます。エラーはスローされず、アプリケーション ID のユーザー名が IIS に表示されますが、何らかの理由でパスワードが正しく設定されていません。パスワードなので設定されているかどうかは確認できませんが、設定されていれば正しく設定されていないと判断できます。手動で IIS にアクセスしてパスワードを入力するまで、結果のアプリケーション プール ユーザーは認証されません。その結果、Web サーバーへのデプロイ後にアプリケーションが失敗し、手動での介入が必要になります。
ここで何か不足していますか?