Temos um script do PowerShell que reinicia um serviço em outro computador. Quando usamos os cmdlets de controle de serviço interno do PowerShell, da seguinte maneira:
$svc = Get-Service -Name MyService -ComputerName myservicehostname
Stop-Service -InputObject $svc
Start-Service -InputObject $svc
Recebemos esse erro de volta:
Serviço de parada: Não é possível abrir o serviço MyService no computador 'myservicehostname'.
No entanto, quando usamos o sc.exe, é assim:
C:\Windows\System32\sc \\myservicehostname stop MyService
C:\Windows\System32\sc \\myservicehostname start MyService
o início e a parada são bem-sucedidos.
O usuário que está reiniciando não é um administrador. Usamos subinacl para conceder ao usuário permissões para iniciar / parar e consultar o serviço:
subinacl.exe /service MyService /GRANT=MyServiceControlUser=STO
Como o PowerShell não pode interromper meu serviço, mas sc.exe
pode?
fonte
subinacl
antes. Que utilidade útil! Obrigado por voltar e deixar essas informações para o resto de nós.O comando a seguir funciona conforme o esperado na minha máquina Windows Server 2008 R2.
Você também pode tentar este comando único para determinar se isso funciona e verificou se o usuário é membro de um grupo que é membro do grupo Usuários nos servidores de destino?
fonte