Set Service Logon Account with PowerShell

choubertsprojects

The Best WordPress plugins!

1. WP Reset

2. WP 301 Redirects

3. WP Force SSL

This article will show you how to create a new service account when you are installing Set-SRVRecord.

The “powershell set-service logon account to local system” is a command that allows users to set the service logon account for a service. This can be done by running the following command at the PowerShell prompt:

Set Service Logon Account with PowerShell

You can quickly query several machines at once with PowerShell and establish the service login account on all of them! This article is for you if you need a PowerShell command to discover and update a service login account.

I was in a situation a few years ago when I needed to create a new Active Directory password policy. After six months, all employee user passwords were to expire. I had accounted for all 10,000 Active Directory accounts. All user accounts that I felt should be utilized for services, as well as all staff accounts, had been labeled.

The whole IT department was notified and asked whether any staff user accounts were running services on any of the systems. Nope!

The password policy was put in place, and the support desk was turned on. Why? There were hundreds of services on servers that were operating as expired employee user accounts! In retrospect, I should have questioned all of the servers personally instead of taking their word for it, but you live and you learn. My approach was to create this PowerShell script to establish the service login account.

This script runs through all of the services in the CSV, connects to the server in question, changes the service account, pauses the service, and then restarts it to verify the change takes effect. Because this was developed a few years back, I’m not using Get-CimInstance instead of Get-WmiObject, and there are a few other things I’m not utilizing.

However, it should still work well for anybody in a situation comparable to mine.

Function ChangeServiceAccount($sServiceName,$sComputerName,$sUsername,$sPassword) $oService = Get-WmiObject -ComputerName $sComputerName -Query $oService = Get-WmiObject -ComputerName $sComputerName -Query “SELECT * FROM Win32 ServiceSelect * from Win32 Serviceselect * from Win32 WHERE name is equal to $sServiceName “$oService is an object that represents a service. Change($null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$nul Out-Null while ($oService.Started) | $oService.StopService() 1st sleep Get-WmiObject -ComputerName $sComputerName -Query $oService = Get-WmiObject -ComputerName $sComputerName -Query “SELECT * FROM Win32 ServiceSelect * from Win32 Serviceselect * from Win32 WHERE name is equal to $sServiceName “,,,,,,,,,, $oService.StartService() | Out-Null ##endwhile ##if (!$sCsvFile) ##endfunction -RecommendedAction ‘Please supply CSV file as first argument’ Write-Error ‘No CSV file supplied’ else (!(Test-Path $sCsvFile)) if (!(Test-Path $sCsvFile)) “CSV file ‘$sCsvFile’ not found”; Write-Error if ((gc $sCsvFile | select -First 1) -ne ‘Service,Server,Username,Password’) elseif ‘Write-Error’ is a kind of error that occurs when a program “The headers in CSV files are wrong. ‘Service,Server,Username,Password’ is required “,,,,,,,,,, else $aRows = Import-Csv $sCsvFile; foreach ($oRow in $aRows); foreach ($oRow in $aRows) ## Change the service login account using PowerShell $oRow.Service changeServiceAccount $oRow.Username $oRow.Server ##endforeach ##endif $oRow.Password Write-Host “Changed service account $($oRow.Service) on $($oRow.Server) to $($oRow.Username) and restarted service” ##endforeach ##endif $oRow.Password Write-Host “Changed service account $($oRow.Service) on $($oRow.Server)

The “set-service powershell” command allows you to set the service logon account with PowerShell.

Frequently Asked Questions

How do I run a service account in PowerShell?

A: In order to run a service account in PowerShell, you have to create a PSCredential object and use the Add-PSCredential cmdlet. If your user has been granted rights on that computer or server, then you can use Invoke-Command with this instance of the PSCredential as an argument. Otherwise, if they are not allowed access yet but are able to be delegated for it through ADUC or Active Directory Users and Computers, then you can specify those credentials via Set-ExecutionPolicy RemoteSigned first before running Invoke-Command with them.

How do I enable a service in PowerShell?

A: To enable a service, you must open PowerShell as Administrator and run the Enable-Service command from there.

How do I change user in PowerShell?

A: To change the user that is running PowerShell, use the Set-ExecutionPolicy RemoteSigned command. This will allow you to run scripts on your computer without any issues from Windows Defender or other security programs.

Related Tags

  • powershell script to change service logon account
  • powershell set service recovery options
  • powershell change service account password
  • set-service a parameter cannot be found that matches parameter name ‘credential
  • powershell set-service credential

Table of Content