Tags: Gruppenrichtlinien, WMI
Mittels Umgebungsvariablen kann man fixe Pfadangaben, Benutzernamen oder dgl. vermeiden und stattdessen flexible Werte einsetzen. Das gilt auch für GPOs, deren Anwendung sich an Variablen koppeln lässt. Darüber hinaus erlauben die Gruppenrichtlinien das Festlegen von Umgebungsvariablen auf den Zielrechnern.
Die Zweiteilung der Gruppenrichtlinien zwischen Administrative Vorlagen, Windows-Einstellungen und Software-Installation auf der einen Seite und den neueren Group Policy Preferences (GPP) macht sich auch bei der Nutzung von Umgebungsvariablen klar bemerkbar (siehe dazu meinen Beitrag Gruppenrichtlinien versus Group Policy Preferences). Während die Unterstützung in den älteren Komponenten der Gruppenrichtlinien dürftig ausfällt, bieten die GPP ausgefeilte Möglichkeiten zur Abfrage und Definition solcher Variablen.
Ausführung von GPOs über Variablen steuern
Ein gängiges Anliegen dürfte sein, die Ausführung von GPOs von bestimmten Bedingungen abhängig zu machen. Die Einschränkung auf bestimmte User oder Computer erfolgt üblicherweise über die Verknüpfung einer GPO mit OUs, darüber hinaus kann man zusätzliche Filter über WMI einrichten. Ein solcher ist auch in der Lage, den Wert einer Umgebungsvariablen zu prüfen, so dass eine GPO nur angewandt wird, wenn der Vergleich zutrifft.
Dabei ist es nur sinnvoll, Systemvariablen heranzuziehen, weil die Client Side Extensions (CSE) zur Ausführung von GPOs im Kontext des SYSTEM-Kontos laufen und in diesem die benutzerspezifischen Variablen nicht verfügbar sind (die GPP erlauben indes ihre Ausführung im User-Kontext). Beispielsweise könnte man mit dem folgenden WMI-Filter die Anwendung von GPOs auf solche Rechner beschränken, bei denen eine Variable namens HOSTNAME mit Dev beginnt
Select * from Win32_Environment WHERE name = "HOSTNAME" AND VariableValue LIKE "Dev%"
Group Policy Preferences mit Variablen einschränken
Weit einfacher fällt das Einschränken der Group Policy Preferences auf bestimmte Computer oder Benutzer. Hier bedarf es meistens keiner WMI-Filter, vielmehr stehen hier im Rahmen des Item Level Targeting (Zielgruppenadressierung auf Elementebene) zahlreiche vordefinierte Kriterien zur Auswahl. In den meisten Fällen wird man gar nicht auf Umgebungsvariablen zurückgreifen müssen, weil fast alle erdenklichen Eigenschaften des Systems und der User direkt abgefragt werden können.
Benötigt man dennoch den Wert einer Umgebungsvariablen, dann steht dafür ein eigener Dialog zur Verfügung, in dem man ihren Namen und den Vergleichswert eingeben kann. Drückt man hier die F3-Taste, dann öffnet sich eine Liste aller verfügbaren Variablen, darunter nicht nur mit jenen aus der Umgebung, sondern auch solche von den GPP selbst. Wählt man die Option Variable auflösen unten links ab, dann wird die Variable bei der Ausführung der Einstellung nicht durch ihren Wert ersetzt.
Variablen schreiben mit den GPP
Die GPP können nicht nur Umgebungsvariablen auslesen, um die Anwendung von Einstellungen davon abhängig zu machen. Sie bieten auch die Mittel, in das Environment zu schreiben, und zwar unter Computerkonfiguration bzw. Benutzerkonfiguration => Einstellungen => Windows-Einstellungen => Umgebung. Diese Funktion kann sowohl System- als auch Benutzervariablen wahlweise anlegen, verändern oder löschen.
Darüber hinaus bietet sie noch spezifische Möglichkeiten zur Bearbeitung des Suchpfads. Aktiviert man die Optionen PATH und Teil, dann kann man einzelne Verzeichnisse innerhalb des Pfads verändern oder zu diesem hinzufügen. Wählt man Teil ab, dann wird die komplette PATH-Variable geschrieben.
Wie bei allen anderen Einstellungen, die man über die GPP vornehmen kann, lässt sich das Setzen von Umgebungsvariablen ebenfalls über die Zielgruppenadressierung steuern. Auf diese Weise kann man sich die exzellenten Filteroptionen zunutze machen, um bestimmte Rechner oder User mit Hilfe von Umgebungsvariablen gezielt zu markieren. Danach können sich andere Programme oder Scripts an ihren Werten orientieren.
Täglich Know-how für IT-Pros mit unserem Newsletter
Ähnliche Beiträge
- Gruppenrichtlinien: WMI-Filter für virtuelle Maschinen
- WMI-Filter testen mit dem kostenlosen WMI Filter Validator
- NTLM-Authentifizierung überwachen oder blockieren mit Gruppenrichtlinien
- Benutzer am Login-Bildschirm anzeigen oder ausblenden mit Gruppenrichtlinien
- Empfohlene Sicherheitseinstellungen und neue Gruppenrichtlinien für Microsoft Edge (ab 107)
Weitere Links
2 Kommentare
Hallo:
Select * from Win32_Environment WHERE AND VariableValue LIKE "Dev%"
ist falsch, es muss heißen:
Select * from Win32_Environment WHERE name = "HOSTNAME" AND VariableValue LIKE "Dev%"
MfG,
Christoph Rall
Danke! Ich habe das Statement korrigiert.