none
Dienstkonto Ändern (Powershell 2.0) RRS feed

  • Frage

  • Hallo zusammen, 

    ich versuche einen Dienst unter einem anderen Benutzer laufen zu lassen. 

    Dazu verwende ich folgenden Code:(Powershell 2.0)

    $LocalSrv = Get-WmiObject Win32_service -filter "name='DIENSTXYZ'"

    $LocalSrv.Change($null,$null,$null,$null,$null,$false,"DOMAIN\DIENSTKONTO","DIENSTKONTO-PW")

    Allerdings funktioniert das so nicht, der Returncode ist zwar 0 (alles hat geklappt) jedoch lässt sich der Dienst nicht mehr starten. (Fehler 1069: Der Dienst konnte wegen eienr fehlerhaften Anmeldung nicht gestartet werden)

    Wenn ich allerdings die verwendeten Credentials benutzte und manuell über die GUI in dem Dienst eintrage funktioniert es.

    Es funktioniert via Powershell nur, wenn ich als Benutzer den Domain-Administrator oder den Lokalen Administrator nehm. 

    Hat jemand eine Idee warum das mit dem "normalen" Dienstkonto nicht geht?

    Montag, 14. Dezember 2015 12:23

Antworten

  • Wenn es wirklich auf ein- und derselben Maschine mit dem gleichen Account manuell klappt, aber nicht per Powershell, dann ist es wahrscheinlich ein Rechte-Problem.
     
    Hat der Service-Account sicher das "LogonAsService" - Recht?
    Hintergrund ist: wenn du manuell über die GUI einen Account einträgst, der grundsätzlich genügend Rechte hat, dem aber "LogonAsService" fehlt, wird es dem Account automatisch hinzugefügt.
     
    Bei der Powershell/Wmi-Methode passiert das nicht, daher funktioniert das neu Starten des Service dann auch nicht.
     

    Grüße, Denniver


    Blog: http://bytecookie.wordpress.com

    Kostenloser Powershell Snippet Manager v4: Link ! Neue Version !
    (Schneller, besser + komfortabler scripten.)

    Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
    Warum das Ganze? Hier gibts die Antwort.


    Montag, 14. Dezember 2015 13:53
    Moderator

Alle Antworten

  • Wenn es wirklich auf ein- und derselben Maschine mit dem gleichen Account manuell klappt, aber nicht per Powershell, dann ist es wahrscheinlich ein Rechte-Problem.
     
    Hat der Service-Account sicher das "LogonAsService" - Recht?
    Hintergrund ist: wenn du manuell über die GUI einen Account einträgst, der grundsätzlich genügend Rechte hat, dem aber "LogonAsService" fehlt, wird es dem Account automatisch hinzugefügt.
     
    Bei der Powershell/Wmi-Methode passiert das nicht, daher funktioniert das neu Starten des Service dann auch nicht.
     

    Grüße, Denniver


    Blog: http://bytecookie.wordpress.com

    Kostenloser Powershell Snippet Manager v4: Link ! Neue Version !
    (Schneller, besser + komfortabler scripten.)

    Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
    Warum das Ganze? Hier gibts die Antwort.


    Montag, 14. Dezember 2015 13:53
    Moderator
  • Danke, 

    diese Information hat mir noch gefehlt, ich hatte jedoch noch ein weiteres Problem.. ich hab das Passwort über

    $pw = read-host -assecurestring 

    eingelesen und damit kann das wmi Objekt nicht umgehen.. es will das Passwort im Klartext übergeben haben.

    Nachdem ich das geändert hab funktioniert es :)

    Mittwoch, 16. Dezember 2015 10:28