Dienstag, 20. Oktober 2009

Windows Dienste und Rechte


In watchDirectory und WatchFTP kann man alle Aufgaben auch als Windows-Dienst starten. Der Vorteil eines Dienstes ist, dass keine Benutzeranmeldung am Server/PC nötig ist, um die Aufgabe zu starten; noch vor einem evt. Anmelden läuft die Aufgabe. Außerdem kann man damit auch Aufgaben unter einem anderen Benutzerkontext als der angemeldete Benutzer ausführen lassen, z. Bsp. mit höheren Rechten. Ein Benutzer, der keine Rechte hat, Windows-Dienste zu beenden und keine Rechte hat, den Taskmanager zu starten, kann die Aufgabe damit nicht mehr beenden.

Diese Starteinstellung einer Aufgabe kann im Reiter "Startart" einfach umgestellt werden - und auch wieder zurück.

Hierbei gibt es aber eine Besonderheit zu beachten, insbesondere wenn das überwachte Verzeichnis ein Netzlaufwerk ist oder Rechte manuell verändert wurden:
Jeder neu erzeugte Dienst läuft zunächst unter dem Benutzer "Local System" (lokales Systemkonto), einem speziellen passwortlosen Standard-Windowsbenutzer. Der Benutzer "lokales Systemkonto" hat - der Name lässt es schon erahnen - nur Zugriffsrechte auf lokale Order.


Dies muss bei überwachten Netzlaufwerken zwingend angepasst werden, sonst startet die Aufgabe nicht.



Handelt es sich um lokale Verzeichnisse und wird der Dienst unter dem Benutzer "lokales Systemkonto" gestartet, müssen die Verzeichnisse Lese- bzw. Schreibrechte für den Benutzer "SYSTEM" haben.


Dazu klickt man im watchDirectory Control-Center ganz rechts außen auf den 2. Button von oben: Dienste - und sucht dann den Dienst zu dieser Aufgabe; er trägt den Namen watchdirectory:[aufgabenname], wobei [aufgabenname] durch den Namen der Aufgabe ersetzt werden muss. Mit einem Doppelklick öffnet man die Diensteeigenschaften und klickt dann auf den Reiter "Anmeldung". Dort ist der erste Punkt ausgewählt, der Dienst wird unter den Benutzer "Lokales Systemkonto" gestartet. Dies ist die Microsoft Standardeinstellung für neu erzeugte Dienste.
Man wählt jetzt den zweiten Punkt und gibt Anmeldeinformationen eines Nutzers an, der auf das überwachte Netzlaufwerk ausreichende Rechte hat.


Bei dem Benutzer "lokales Systemkonto" handelt es sich um eine eingeschränkes Benutzerkonto. Dieser Benutzer kann sich nicht normal an Windows anmelden und hat z. Bsp. auch keine zugewiesenen Drucker. Dadurch werden manche Aufgaben unter diesem Konto nicht funktionieren.


Tipp: Einen eigenständigen (Domänen-) Benutzer namens "watchDirectory" erzeugen, den man für alle watchDirectory Dienste des Netzwerks verwendet.
Bitte beachten: wenn für diesen Benutzer das Passwort geändert wird, muss dieses auch an dieser Stelle der Dienstekonfiguration geändert werden. Aus diesem Grund empfehle ich für diesen Dienst ein Benutzerkonto mit einem statischen Passwort.
Ebenfalls beachten: wenn die Startart der Aufgabe geändert wird, z. Bsp. in "manuell starten", und danach wieder auf "als Dienst starten" zurückgeschaltet wird, muss die oben erwähnte Dienstekonfiguration erneut ausgeführt werden, da der Dienst neu definiert wurde und wieder die Standardeinstellung "Lokales System" gesetzt wurde.

Nach dieser Änderung kann die Aufgabe (bzw. der Dienst) gestartet werden und die Überwachung im Netzwerk funktioniert.