Beschreibung:

Dieser Artikel beschreibt die Möglichkeit, Aufgaben in verschiedenen Nutzerkontexten auszuführen. Die Einstellungen können im Dialog "Aktion wählen" im Abschnitt "Sicherheitsoptionen" vorgenommen werden.



INHALTSVERZEICHNIS



Aufgaben in unterschiedlichen Nutzerkontexten ausführen

Aufgaben werden im Automation Planner standardmäßig mit dem lokalen System-Account "SYSTEM" mit den höchsten Berechtigungen ausgeführt. Seit Version "0.3.4-8" (September 2024) ist es möglich, auch andere definierte Benutzeridentitäten bzw. -gruppen festzulegen unter deren Identität die Aufgabe ausgeführt wird.


Die Einstellungen können im Dialog "Aktion wählen" im Abschnitt "Sicherheitsoptionen" vorgenommen werden:


Die Einstellungen für Automation Planner entsprechen den folgenden Optionen in der Windows-Aufgabenplanung:



Auswahl "Benutzerkonto":

Folgende Gruppen stehen in Automation Planner zur Verfügung:

  • Auswahl "System" (Standard): Lokaler System-Account
  • Auswahl "Benutzer": Eine lokale Gruppe, die alle Benutzer*innen in der Domäne darstellt.
    • Technischer Name: DOMAIN_ALIAS_RID_USERS 
    • SID: S-1-5-32-545
  • Auswahl "Administratoren": Eine lokale Gruppe, die für die Verwaltung der Domäne verwendet wird.
    • Technischer Name: DOMAIN_ALIAS_RID_ADMINS
    • SID: S-1-5-32-544
  • Auswahl "Remotedesktopbenutzer": Eine lokale Gruppe, die alle Remotedesktopbenutzer*innen darstellt.
    • Technischer Name: DOMAIN_ALIAS_RID_REMOTE_DESKTOP_USERS
    • SID: S-1-5-32-555


Auswahl "Mit höchsten Privilegien ausführen":

Die Option ist standardmäßig aktiv.

Die Einstellung “Mit höchsten Privilegien ausführen” in der Windows Aufgabenplanung bedeutet, dass die Aufgabe mit administrativen Rechten ausgeführt wird. Dies ist besonders nützlich, wenn die Aufgabe Aktionen ausführen muss, die erhöhte Berechtigungen erfordern, wie z.B. das Ändern von Systemdateien oder das Installieren von Software.


Wenn diese Option aktiviert ist, wird die Aufgabe mit einem Token für erhöhte Rechte ausgeführt, anstatt mit den geringsten Rechten, die normalerweise durch die Benutzerkontensteuerung (UAC) festgelegt werden. Dies stellt sicher, dass die Aufgabe ohne zusätzliche Bestätigungen oder Eingriffe des Benutzers ausgeführt werden kann.



Auswahl "Folgende Regel anwenden, falls die Aufgabe bereits ausgeführt wird":

Die Option “Folgende Regel anwenden, falls die Aufgabe bereits ausgeführt wird” ermöglicht es, festzulegen, was geschehen soll, wenn die Aufgabe zum geplanten Startzeitpunkt bereits läuft. 


Folgende Optionen stehen zur Auswahl:

  • Keine neue Instanz starten: Wenn die Aufgabe bereits ausgeführt wird, wird keine neue Instanz gestartet.
  • Neue Instanz parallel ausführen: Eine neue Instanz der Aufgabe wird gestartet, auch wenn die vorherige noch läuft.
  • Neue Instanz in Warteschlange: Wenn die Aufgabe bereits ausgeführt wird, wird eine neue Instanz der Aufgabe in eine Warteschlange gestellt, anstatt sofort gestartet zu werden.
  • Vorhandene Instanz anhalten: Die laufende Instanz wird beendet und eine neue Instanz wird gestartet.

Diese Optionen sind nützlich, um sicherzustellen, dass Aufgaben nicht mehrfach oder unnötig ausgeführt werden, was zu Konflikten führen könnte.



Anwendungsfälle

Standardausführung als System

In der Standardeinstellung „System“ wird eine Aufgabe immer mit maximalen Rechten als Systemidentität ausgeführt. Diese Konfiguration ist nützlich, wenn Aufgaben unabhängig von einem bestimmten Benutzerkontext ausgeführt werden sollen. Allerdings hat dies den Nachteil, dass die Aufgabe keine Rückmeldungen an einen spezifischen Benutzer geben kann und nicht im Rahmen des Benutzerprofils agieren kann.


Benutzerkontext auf Terminalservern

Ein häufiges Szenario auf Terminalservern ist die Ausführung von Aufgaben beim Anmelden eines Benutzers. Hierbei wird die Aufgabe unter der Identität „Remotedesktopbenutzer“ ausgeführt. Dies ermöglicht es der Aufgabe, im Kontext des angemeldeten Benutzers zu agieren und auf dessen Profil und Daten zuzugreifen. Die Aufgabe wird dabei nur für Nutzer bei der Anmeldung ausgeführt, die Mitglied der Gruppe "Remotedesktopbenutzer" sind.


Um sicherzustellen, dass die Aufgabe mit den höchstmöglichen verfügbaren Berechtigungen ausgeführt wird, sollte die Option „Mit höchsten Privilegien ausführen“ aktiviert sein. Diese Einstellung stellt sicher, dass die Aufgabe alle notwendigen Rechte hat, um ihre Aufgaben effektiv zu erfüllen, wie z.B. das Installieren von Software oder das Starten von Programmen.


Parallelität und Warteschlangen

Die Option “Folgende Regel anwenden, falls die Aufgabe bereits ausgeführt wird” sollte entweder auf “Neue Instanz parallel ausführen” oder “Neue Instanz in Warteschlange” eingestellt werden. Dies gewährleistet, dass bei gleichzeitiger Anmeldung mehrerer Nutzer die Aufgabe für jeden Nutzer separat ausgeführt wird. 


Beispielanwendung: Überwachung der Nutzerprofilgröße

Ein praktisches Beispiel für eine benutzerspezifische Aufgabe ist die Überwachung der Größe des Nutzerprofils. Diese Aufgabe kann beim Anmelden eines Nutzers gestartet werden und folgende Schritte umfassen:


  1. Ermittlung der Profilgröße: Die Aufgabe berechnet die Gesamtgröße des Benutzerprofils, indem sie alle Dateien und Ordner im Profilverzeichnis summiert.
  2. Schwellenwertüberprüfung: Die Aufgabe vergleicht die ermittelte Profilgröße mit einem vordefinierten Schwellenwert.
  3. Benachrichtigung des Nutzers: Wenn die Profilgröße den Schwellenwert überschreitet, zeigt die Aufgabe eine Meldung an, die den Nutzer darüber informiert und möglicherweise weitere Schritte vorschlägt, wie z.B. das Löschen nicht benötigter Dateien.

Vorteile der benutzerspezifischen Ausführung

Eine so konfigurierte Aufgabe wird bei jeder Anmeldung eines Benutzers einmal unter dessen Identität ausgeführt. Dies hat mehrere Vorteile:


  • Zugriff auf das Benutzerprofil: Die Aufgabe kann auf alle Daten und Einstellungen des Benutzerprofils zugreifen, was für personalisierte Aufgaben wie das Installieren von Software oder das Konfigurieren von Benutzereinstellungen wichtig ist.
  • Kontextbezogene Ausführung: Programme und Skripte können im Kontext der jeweiligen Nutzersitzung ausgeführt werden, was bedeutet, dass sie direkt mit den Anwendungen und Daten des Benutzers interagieren können.
  • Rückmeldungen an den Benutzer: Da die Aufgabe im Benutzerkontext läuft, kann sie dem Benutzer direkt Rückmeldungen geben, z.B. durch Benachrichtigungen oder Dialogfenster.