如何使用powershell脚本更新SSRS密码configuration

我有大约60-70台机器可能或不可能有SSRS。 密码刚刚过期了它运行的服务帐户。 有没有一种方法脚本SSRS的更新密码?

这个PowerShell的代码将改变任何数量的服务的服务accoutn信息。 在这个版本中,列表从文件中被取回,但是这可以很容易地从AD中修改。 另外请注意,您可以同时更改多个服务。 在这种情况下,将filter更改为“-filter”name = SSRS“。我也指定了帐户名称。我不积极这是必需的,但我从来没有完成没有帐户名称。服务重启也是必需的,为此您应该取消注释重启行。

$account="domain\userName" $password="password" $computers = get-content servers.txt $svcs = gwmi win32_service -filter "name='myservice' and name='myservice2' and name='myservice3'" -computerName $computers foreach($s in $svcs) { $s.change($null,$null,$null,$null,$null,$null,$account,$password,$null,$null,$null) # optional service restart # $s.stopservice # $s.startservice } 

您可以使用SMO WMIpipe理类,这个类可以处理任何特殊的权限。

 [reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.SqlWmiManagement") $wmi = new-object ("Microsoft.SqlServer.Management.Smo.Wmi.ManagedComputer") $env:computername $wmi.services | where {$_.Type -eq 'ReportServer'} | foreach {$_.SetServiceAccount('contoso\mylogin','mypassword')}