Die neue Gruppenrichtlinienverwaltungskonsole (GPMC), die mit Windows Server 2008 und den Remote Server Administration Tools (RSAT) ausgeliefert wird, enthält ein interessantes neues Feature: Erstmals ist es nun möglich, Kommentare zu ganzen Gruppenrichtlinienobjekten (GPO) oder zu einzelnen Einstellungen zu hinterlegen. Leider sind die technischen Hintergründe dieser Funktion wenig dokumentiert, daher ist ein wenig Ausprobieren angesagt. Hier ein paar Ergebnisse meiner Nachforschungen.
Beide Kommentar-Varianten legt die GPMC (bzw. eigentlich der Gruppenrichtlinien-Editor) als Textdateien im Speicherordner der Gruppenrichtlinien ab, der sich in der SYSVOL-Freigabe des Dateisystems befindet. Dabei werden die Varianten auch als Dateien unterschiedlich gehandhabt: Kommentare des gesamten Gruppenrichtlinienobjekts liegen als Textdatei mit dem Namen „GPO.cmt“ direkt im GPO-Speicherordner vor. Kommentare zu einzelnen Einstellungen, derzeit leider nur für die Administrativen Vorlagen verfügbar, legt das Programm als XML-Datei mit dem Namen „comment.cmtx“ im Unterordner Machine bzw. User ab.
Anders, als man erwarten könnte, liegen diese Metadaten also nicht in Active Directory vor, sondern als relativ simple Textdateien. Einerseits ist das etwas inkonsistent, weil die meisten beschreibenden Daten zu GPOs eben sehr wohl in Active Directory stehen (z.B. die Versionsnummer oder die Information, welcher GPO-Abschnitt aktiv ist). Zur Auswertung der vollständigen Metadaten sind also zwei verschiedene Techniken nötig: Ein Zugriff auf AD und ein Dateizugriff. Andererseits erreicht Microsoft mit diesem Ansatz größtmögliche Kompatibilität, denn die Kommentare sind so nicht von Active Directory und seinem Schema abhängig und auch nicht von einer bestimmten Windows-Version.
Kommentare zu GPOs
Zu der Datei „GPO.cmt“ findet sich im Internet bislang praktisch gar nichts, vor allem keine Dokumentation durch den Hersteller. Es liegt aber durchaus nahe, die Datei programmatisch auszuwerten oder zu erzeugen, daher benötigt man schon einige Rahmendaten. Hier die Ergebnisse meiner Experimente:
- Die Datei muss im Unicode-Formatvorliegen. Mit ANSI-Dateien können weder die GPMC noch der Gruppenrichtlinien-Editor etwas anfangen und zeigen unleserliche Schriftzeichen an (weil sie die Daten falsch interpretieren).
- Es gibt anscheinend keine vorgegebene Schnittstelleim System, um die Datei auszuwerten. Dies ergibt sich daraus, dass die GPMC und der GP-Editor leicht unterschiedlich reagieren – siehe die folgenden Punkte. Es dürfte als Schlussfolgerung derzeit also durchaus machbar sein, die Datei direkt anzusprechen, weil die Windows-Tools das anscheinend auch tun.
- Angaben zur maximalen Dateigrößefinden sich nirgends. Meine Versuche haben aber eine ungefähre Maximalgröße ergeben:
- Bei manueller Eingabe lässt der GP-Editor maximal 2047 Zeichen zu.
- Fügt man Text aus der Zwischenablage ein, wird dieser nach 2031 Zeichen abgeschnitten. Man kann dann auch manuell keine Zeichen mehr hinzufügen, jedenfalls nicht im selben Arbeitsschritt.
- Fügt man in die Datei GPO.cmt direkt Text ein, so kann dieser länger sein als 2031 bzw. 2047 Zeichen. Der GP-Editor zeigt allerdings dann ohne weitere Meldungen nur die ersten 2031 Zeichen an. Die GPMC hingegen zeigte in meinem Versuch 2035 leserliche und einige unleserliche Zeichen an.
- Als Quintessenz lässt sich derzeit also nur die vage Empfehlung aussprechen, dass der Kommentar nicht mehr als 2000 Zeichen umfassen sollte, wenn nichts verschluckt werden soll. Dadurch sind der Nutzbarkeit der Kommentare natürlich Grenzen gesetzt: Eine komplette Änderungshistorie etwa kann man so nicht ablegen. Dies muss man bei Bedarf weiterhin in separaten Dokumentationen tun.
- Andere Werkzeuge, die die Datei GPO.cmt direkt ansprechen, stehen nicht unter dieser Größenbeschränkung. Mein Doku-Tool José gibt z.B. klaglos auch viel längere Kommentare aus. Da man diese dann aber nicht mehr im GP-Editor bearbeiten kann, sollte man das oben skizzierte Limit nicht überschreiten.
Kommentare zu Einstellungen
Einstellungskommentare legt der GP-Editor in XML-Dateien ab. Das Format dieser Dateien ist nur scheinbar gut dokumentiert – zwar erwähnt die Microsoft-Dokumentation sie, aber Details fehlen dann doch. Daher hier ein Beispiel einer solchen Datei:
<policyComments xmlns:xsd=„http://www.w3.org/2001/XMLSchema“ xmlns:xsi=„http://www.w3.org/2001/XMLSchema-instance“ revision=„1.0“ schemaVersion=„1.0“ xmlns=„http://www.microsoft.com/GroupPolicy/CommentDefinitions“>
<policyNamespaces>
<using prefix=„ns0“ namespace=„Microsoft.Policies.ControlPanel2“></using>
<using prefix=„ns1“ namespace=„Microsoft.Policies.Printing“></using>
</policyNamespaces>
<comments>
<admTemplate>
<comment policyRef=„ns0:UseDefaultTile“ commentText=„$(resource.ns0_UseDefaultTile)“></comment>
<comment policyRef=„ns1:AllowWebPrinting“ commentText=„$(resource.ns1_AllowWebPrinting)“></comment>
<comment policyRef=„ns1:PhysicalLocation“ commentText=„$(resource.ns1_PhysicalLocation)“></comment>
</admTemplate>
</comments>
<resources minRequiredRevision=„1.0“>
<stringTable>
<string id=„ns0_UseDefaultTile“>Kommentar Standardanmeldebild</string>
<string id=„ns1_AllowWebPrinting“>Kommentar Webbesasiertes Drucken</string>
<string id=„ns1_PhysicalLocation“>Kommentar Computerstandort</string>
</stringTable>
</resources>
</policyComments>
Hier habe ich (bislang) keine Experimente bezüglich der Dateigröße gemacht.
Ergänzung 22. August 2012: In einem KB-Artikel, auf den @Dieter_Schmitz per Twitter aufmerksam machte, ist noch eine weitere Facette der Seltsamkeit beschrieben: Im GPO-Editor von Windows 7 und Windows Server 2008 R2 kann man Kommentare nicht löschen.
[Unable to delete comments in Administrative Settings of Group Policy Editor in Windows Server 2008 R2 and Windows 7] ‚
http://support.microsoft.com/kb/2022375
http://faq-o-matic.net/?p=1027