Powershellを使用してWindowsサービスを作成したいと思います。特定のユーザーのためにそれを作成するのは簡単です。ここから採用したこの関数を使用しました。
function ReinstallService1 ($serviceName, $binaryPath, $login, $pass)
{
Write-Host "installing service"
# creating credentials which can be used to run my windows service
$secpasswd = ConvertTo-SecureString $pass -AsPlainText -Force
$mycreds = New-Object System.Management.Automation.PSCredential ($login, $secpasswd)
# creating widnows service using all provided parameters
New-Service -name $serviceName -binaryPathName $binaryPath -displayName $serviceName -startupType Automatic -credential $mycreds
Write-Host "installation completed"
}
私の質問は、「ネットワークサービス」アカウントを作成するにはどうすればよいですか?
New-Service行を変更し、資格情報パラメーターを削除すると、サービスは「ローカルシステム」アカウント用に作成されます。ほとんど逃します。
New-Service -name $serviceName -binaryPathName $binaryPath -displayName $serviceName -startupType Automatic
私はたくさんグーグルで検索しましたが、サービスアカウントを示す方法がありませんでした。ユーザー「NETWORKSSERVICE」の資格情報パラメーターを使用しようとすると、どのパスワードを設定すればよいかわかりません。パスワードを作成した場合(コマンドレットがパスワードを無視した場合に備えて)、機能しません。エラーは次のとおりです。
新規サービス:次のエラーのため、サービス'XXXX(XXXX)'を作成できません:アカウント名が無効であるか存在しないか、指定されたアカウント名のパスワードが無効です