referat interpretation charakterisierung

REFERAT-Menü

Deutsch
Geographie
Geschichte
Chemie
Biographien
Elektronik
Englisch
Epochen
Französisch
Biologie
Informatik
Italienisch
Kunst
Latein
Literatur
Mathematik
Musik
Philosophie
Physik
Politik
Psychologie
Recht
Sonstige
Spanisch
Sport
Technik
Wirtschaft
Wirtschaftskunde-BWL

Die Programmierung der Policy - Einleitung - Benutzerrechte auf Windows NT - Computern

1. Einleitung - Benutzerrechte auf Windows NT - Computern

In unserer heutigen Informationsgesellschaft gewinnt der Computer immer mehr an Bedeutung. Vor allem aus der modernen Arbeitswelt ist der hellgraue Gehilfe kaum mehr wegzudenken. Von Textverarbeitung über Datenbanken bis hin zur Tabellenkalkulation hat er alles zu bieten, was man sich im Büroalltag nur so wünschen kann. Doch leider wissen nur die wenigsten Leute über die umfangreichen Funktionen des Computers genauer Bescheid. Auch deshalb wird er immer noch oft als eine Art Spielzeug gesehen, und nicht als seriöser Arbeitsgehilfe. Aufgrund dieser Tatsachen ist es auch nicht verwunderlich, dass Manche ihren Experimentierdrängen am Computer freien Lauf lassen. Das erschreckende Resultat folgt, je nach Schwere des Eingriffs, meist nur wenige Momente später. Von Abstürzen einzelner Computer bis hin zur Vernichtung eines ganzen Firmennetzwerkes ist alles möglich.

Um diesem schwerwiegenden Problem entgegenzusteuern hat Windows NT sogenannte Benutzerrechte eingeführt, die es erlauben, den Benutzer in seinen Handlungen einzuschränken und dessen Aktionen am Computer auch zu überwachen.


2. Die Registrierung von Windows NT

Eine wichtige Rolle bei der Vergabe von Benutzerrechten spielt die Registrierung (sog. “Registry”). Sie ist eine binäre, hierarchisch organisierte Datenbank, die systembezogene Einstellungen speichert. Aufgeteilt ist sie in fünf Hauptschlüssel, die im Englischen auch als “Hives” bezeichnet werden. Jeder dieser fünf Schlüssel kann dabei weitere Unterschlüssel (sog.”Keys”) und Werteinträge (sog. ”Values”) besitzen. Weiters ist es möglich, dass Einträge in der Konfigurationsdatenbank doppelt existieren. Dieses Phänomen kann man auf die Existenz von Verknüpfungen zurückführen, die auf andere Teile der Registry verweisen. Ändert man dabei entweder den Wert der Verknüpfung oder den reellen Wert selbst, so ändern sich automatisch beide Einträge.

Gespeichert wird die Registrierung in sogenannten Strukturdateien im Verzeichnis %SYSTEMROOT%\System32\Config. Für jede Datei gibt es die dazupassende Sicherungsdatei, die Informationen über die letzten Änderungen an der Registry enthält. Diese hat denselben Dateinamen wie die Strukturdatei, jedoch die Dateiendung *.log.

Die Liste der Strukturdateien und den jeweiligen Schlüssel, der in ihnen abgelegt wird, ist Abb. 2.1. zu entnehmen:

? Abb. 2.1.: Eine Auflistung der Strukturdateien und die dazugehörigen Registrierungsschlüs-sel

Dateiname:
Schlüssel:
SAM
HKEY_LOCAL_MACHINE\SAM
SECURITY
HKEY_LOCAL_MACHINE\SECURITY
SOFTWARE
HKEY_LOCAL_MACHINE\SOFTWARE
SYSTEM
HKEY_LOCAL_MACHINE\SYSTEM
DEFAULT
HKEY_USERS\Default
[Benutzername]nnn
HKEY_USERS\Security ID
USER oder ADMIN
HKEY_CURRENT_USER

In der folgenden Aufstellung findet man eine grobe Beschreibung der fünf Hauptschlüssel der Registry:

· HKEY_LOCAL_MACHINE: In diesem Teil sind systemspezifische Informationen und Details über die Konfiguration der Hardware gesichert.

 

· HKEY_CLASSES_ROOT: Aus diesem Schlüssel liest das Betriebssystem Informationen über OLE (Object Linking and Embedding) und ActiveX-Komponenten sowie die Zuordnung von Dateiendungen aus.

 

· HKEY_CURRENT_CONFIG: Daten über die aktuelle Hardwarekonfiguration, die auch im Schlüssel HKEY_LOCAL_MACHINE zu finden ist, werden in diesem Bereich gespeichert.

 

· HKEY_CURRENT_USER: Benutzerspezifische Einstellungen sowie andere relevante Daten des aktuellen Benutzers sind hier gelagert.

 

· HKEY_USERS: In diesem Bereich kann man die Daten aller dem System bekannten lokalen Benutzer, inklusive des gerade angemeldeten Benutzers, finden.

 

2.1. Die Hauptschlüssel der Registrierung im Detail

 

Wie schon erwähnt besteht die Windows-NT-Registry aus fünf verschiedenen Hauptschlüssel,

deren Besonderheiten in der folgenden Aufstellung genauer unter die Lupe genommen werden.

 

· HKEY_LOCAL_MACHINE: In diesem Schlüssel sind Informationen über den lokalen Computer gespeichert. Dazu zählt man Informationen über die installierte Hardware (z.B.: Typ des Hauptprozessors, Speicherausbau, Typ des Bussystems, usw.) und die dazugehörenden Treiber bzw. deren Einstellungen. Weiters besitzt dieser Schlüssel folgende vier Unterschlüssel: SAM, Security, Software und Hardware.

 

SAM ist der sogenannte Security Account Manager, der Informationen über Benutzer und Benutzergruppen sowie Sicherheitsinformationen über die Domäne (sog. “Domain”) enthält.

 

Im Unterschlüssel Security sind Sicherheitsinformationen über den lokalen Rechner gespeichert. Dazu werden die Zugriffsrechte einzelner Benutzer sowie die Zugehörigkeit zu lokalen Gruppen gezählt.

 

Im Unterschlüssel Software findet man die Einträge von Anwendungsprogrammen, die darin computerspezifische Daten speichern. Benutzerdefinierte Einstellungen von Programmen befinden sich dagegen im Schlüssel HKEY_CURRENT_USER\SOFTWARE. Dabei ist es durchaus möglich, dass sich benutzerdefinierte und computerspezifische Daten widersprechen. Wenn dieser Fall eintritt, so haben benutzerspezifische Einstellungen immer eine höhere Priorität als computerspezifische. Darüber hinaus enthält der Unterschlüssel Software wiederum Unterschlüssel, von denen der Wichtigste Classes genannt wird, worin man Zuordnungen von Dateiendungen zu einzelnen Programmen finden kann. (siehe auch: HKEY_CLASSES_ROOT).

 

Der Unterbereich System enthält Informationen zur Hardwarekonfiguration (z.B.: installierte Dateisysteme, virtuelle Gerätetreiber, usw.) und steuert auch den Bootvorgang von Windows NT. Die Informationen für den Startvorgang werden dabei in sogenannten Control-Sets gespeichert, wobei jedes Set eine komplette Hardwarekonfiguration enthält. Der Schlüssel CurrentControlSet stellt dabei die aktuelle Systemkonfiguration dar. Während der Startphase wird ein Unterschlüssel namens Clone angelegt, der eine Kopie von CurrentControlSet enthält. Grundsätzlich werden die Informationen im Unterschlüssel Hardware beim Start des Betriebssystems ermittelt und beim Herunterfahren wieder gelöscht.

 

· HKEY_CURRENT_CONFIG: In diesem Hauptschlüssel werden unterschiedliche Hardwareprofile gespeichert. So kann man beispielsweise zwei unterschiedliche Profile für einen mobilen Rechner und eine Docking-Station einrichten. Der Inhalt dieses ganzen Schlüssels ist auch im Schlüssel HKEY_LOCAL_MACHINE\

System\CurrentControlSet\HardwareProfiles\Current gelagert.

 

· HKEY_CLASSES_ROOT: In diesem Verzeichnis sind alle Informationen über die dem System bekannten Dateiendungen gespeichert.

 

Zu diesen zählt man auch Anweisungen die Dateien, aufgrund ihrer bestimmten Dateiendungen mit dem dazugehörigen Anwendungsprogramm verknüpfen. Daher ist es möglich, Dateien direkt aus dem Windows NT-Explorer zu öffnen.

 

Neben allen Dateiinformationen findet man auch Einstellungen von OLE- und ActiveX-Controls. Diese sind vor allem für Programmierer von großer Bedeutung.

 

Eigentlich stellt der Schlüssel HKEY_CLASSES_ROOT nur eine Verknüpfung mit HKEY_LOCAL_MACHINE\Software\Classes dar, wo die eigentlichen Einstellungen gespeichert sind.

 

· HKEY_CURRENT_USER: Dieser Schlüssel dient zum Sichern von benutzerspezifischen Daten des gerade angemeldeten Benutzers. Führt ein Benutzer einen Anmeldevorgang aus, so werden Einstellungen aus dem Schlüssel HKEY_USERS\Security-ID-String (siehe auch: HKEY_USERS), in HKEY_CURRENT_USER übernommen. Wird bei einem Anmeldeversuch kein Benutzerprofil gefunden, so wird das Default-Profil (Standardbenutzerprofil) geladen, welches sich im Schlüssel HKEY_USERS\Default befindet. Das gefundene Benutzerprofil und dessen Informationen besitzen dabei eine höhere Priorität als die computerspezifischen Einstellungen unter HKEY_LOCAL_MACHINE.

 

Der Schlüssel HKEY_CURRENT_USER hat im Endeffekt dieselbe Verknüpfungsfunktion wie HKEY_CLASSES_ROOT. Der einzige Unterschied ist nur, dass HKEY_CURRENT_USER auf das Verzeichnis HKEY_USER\Security-ID-String des Benutzers verweist.

 

· HKEY_USERS: In diesem Bereich werden alle dem System bekannten Benutzerprofile und deren persönliche Einstellungen gespeichert. Für jeden Benutzer ist dabei ein Unterschlüssel mit der Bezeichnung des Security-ID-Strings (z.B.: S-1-5-21-1750099260-1133346281-1777090905-500) vorhanden. Dieser String beginnt mit einem “S”, auf welches eine benutzerspezifische Zahlenkombination folgt.

 

Der Unterschlüssel Default enthält das Standardbenutzerprofil von Windows NT, welches für Anwender geladen wird, die kein persönliches Profil besitzen. Weiters existiert auch der Schlüssel HKEY_USERS\Security-ID-String, der alle benutzerdefinierten Einstellungen enthält und auf den durch den Schlüssel HKEY_CURRENT_USER verwiesen wird.

 

In den Unterbereichen Console, Environment und Printers kann man benutzerspezifische Einstellungen für die DOS-Konsole, Umgebungsvariablen oder den Drucker tätigen.


2.2. Werteinträge in der Registry

Neben den einzelnen Schlüsseln der Registrierung, die hierarchisch gegliedert sind, gibt es auch noch einige verschiedene Werteinträge. Dies ist notwendig, da unterschiedliche Daten wie beispielsweise Zahlen oder Texte, in der Konfigurationsdatenbank gespeichert werden müssen. Jeder Eintrag setzt sich dabei aus den Teilen: Name, Datentyp und zugewiesener Wert, zusammen.

Unter Windows NT stehen dabei sechs verschiedene Datentypen zur Verfügung, wobei es darüber hinaus noch möglich ist, eigene benutzerdefinierte Datentypen hinzuzufügen. Die einzelnen Datentypen werden in der folgenden Liste angeführt:

· REG_BINARY: Binärdaten, die in hexadezimaler Notation dargestellt werden.

 

· REG_DWORD: 32-Bit-Daten (4-Bytes lang) in hexadezimaler oder dezimaler Notation.

 

· REG_EXPAND_SZ: Beliebig erweiterbare Zeichenkette, die von Applikationen gesetzt werden kann. Dabei können auch Variablen verwendet werden, die beim Start des Betriebssystems initialisiert werden (z.B.: %SYSTEMROOT oder %USERNAME%).

 

· REG_MULTI_SZ: Eine Zeichenkette, die mehrere Parameter beinhalten kann, die voneinander durch binäre Nullen (sog. Null-Bytes) getrennt sind.

 

· REG_FULL_RESOURCE_DESCRIPTOR: Ressourcenliste einer Hardwarekomponente oder eines Treibers.

 

 

2.3. Bearbeiten der Registry mit dem Registrierungseditor

Um die Konfigurationsdatenbank bearbeiten zu können, ist ein spezielles Hilfsprogramm vonnöten, welches bereits standardmäßig mit Windows NT ausgeliefert wird. Bei diesem handelt es sich um den Registrierungseditor, den man unter Windows NT in zwei verschiedenen Versionen vorfindet. Zum einen gibt es den Regedt32 (im Verzeichnis %SYSTEMROOT%\System32; Datei: regedt32.exe), und zum anderen das Programm Regedit (im Verzeichnis %SYSTEMROOT%\; Datei: regedit.exe). Beide Anwendungen erfüllen denselben Zweck, jedoch unterscheiden sich markant in der Darstellung der Registry und in den Zusatzfunktionen zum Bearbeiten der Registrierung.

Gemeinsam ist ihnen die Möglichkeit, Einträge in der Konfigurationsdatenbank zu suchen, wobei Regedit hier die weitaus vielfältigeren Möglichkeiten bietet. Werden die gewünschten Werte gefunden, so lassen sich diese mit beiden Programmen bequem bearbeiten. Auch kann man Sicherungsdateien von einzelnen Schlüsseln oder sogar der ganzen Registrierung anfertigen. Bei diesem Punkt sollte zusätzlich das Programm Rdisk (im Verzeichnis %SYSTEMROOT%\System32; Datei: rdisk.exe) erwähnt werden, welches Notfalldisketten für Windows NT anlegt. Dabei handelt es sich um auf Diskette gespeicherte Versionen der Registrierung. Sollten nun gröbere Probleme mit den Einstellungen des Computers auftreten, so kann man die gesicherte Dateiversion der Registry, die man entweder mit Rdisk oder mit einem der Registrierungseditoren angelegt hat, wieder herstellen. Weiters besitzen beide Programme Netzwerkfunktionen, die den Zugriff auf eine Konfigurationsdatenbank eines im Netzwerk befindlichen Computers gewährleisten.

Ein weiteres Feature ist das Festlegen von Zugriffsrechten (drei unterschiedliche Arten: Lesen, Vollzugriff und beschränkter Zugriff) für einzelne Benutzer oder ganze Benutzergruppen. Darüber hinaus gibt es auch noch die Möglichkeit die Registry zu Überwachen. Dabei werden alle Zugriffe von Benutzern oder Benutzergruppen protokolliert. Beide Funktionen, das Festlegen von Zugriffsrechten und das Überwachen, sind nur mit dem Registrierungseditor Regedt32 möglich.

? Abb. 2.3.1.: Zeigt die Registrierungseditoren in den Versionen regedit.exe und regedt32.exe.


3. Systemrichtlinien unter Windows NT

Systemrichtlinien (sog. “Policies”) sind untrennbar mit der Registrierung von Windows NT verbunden. Sie eignen sich zum Einschränken von Rechten von einzelnen Benutzern oder auch zum Zurücksetzen von veränderten Registrierungswerten. Darum liegt ihr Einsatzgebiet vor allem im Bereich von großen PC-Netzwerken, wo das Management und die Überwachung von lokalen Arbeitsstationen zur fast unlösbaren Aufgabe geworden ist. In diesen Netzwerken muß der Administrator einen gesunden Mittelweg zwischen größtmöglicher Freiheit für einzelne Benutzer und Bereitstellung funktionsfähiger Arbeitsplatz-PCs finden. Dies sind die Hauptgründe warum hier Policies eingesetzt werden.  

Systemrichtlinien sind Sammlungen von Einstellungen, die beim Anmelden eines Benutzers die gewünschten Einträge im benutzer- und maschinenbezogenen Teil der Registrierung des lokalen Computers vornehmen. So kann ein individueller Anwender auf jedem Computer eines Netzwerkes in seinen Tätigkeiten eingeschränkt und kontrolliert werden.

3.1. Systemrichtlinieneditor

Wenn man nun auf den Geschmack gekommen ist, auch in seinem eigenen Netzwerk Richtlinien an einzelne Benutzer zu vergeben, so muß der Systemrichtlinieneditor (siehe: Abb. 3.1.1.) als Werkzeug eingesetzt werden. Dieser bearbeitet die Registrierungsdatenbank mit Hilfe von Systemrichtlinien, für deren Erstellen er eine graphische Oberfläche zur Verfügung stellt.

? Abb. 3.1.1.: Stellt den Systemrichtlinieneditor dar, der zum Erstellen von Systemrichtlinien verwendet wird.

Der Systemrichtlinieneditor ist im Lieferumfang der Servervariante von Windows NT enthalten und wird vom Betriebssystem auch automatisch installiert. Besitzer einer Windows NT Workstation-Ausführung genießen diesen Komfort nicht, denn der Policy-Editor wird in dieser Version nicht standardmäßig mitgeliefert. Wenn man jedoch manuell einige Dateien kopiert, so lassen sich die Funktionen des Systemrichtlinieneditors auch auf Windows NT Workstations implementieren.

Die auszuführende Programmdatei namens poledit.exe gehört in das Verzeichnis %SYSTEMROOT% (im allgemeinen der Ordner \WINNT des Installationslaufwerkes) und die dazugehörige Hilfedatei poledit.hlp sollte nach %SYSTEMROOT%\Help kopiert werden.

Zusätzlich benötigt der Systemrichtlinieneditor noch Vorlagedateien (siehe Kapitel 3.3), die in das Verzeichnis %SYSTEMROOT%\Inf kopiert werden müssen.

Damit sollte man Richtlinien auch unter Windows NT Workstation erstellen können.


3.1.1. Bedienung des Systemrichtlinieneditors

Grundsätzlich werden alle Systemrichtlinien, egal welche Eingabewerte sie erwarten, zunächst mit einer Checkbox aktiviert bzw. deaktiviert. Diese Checkboxen können drei verschiedene Zustände annehmen, die in Abb. 3.1.2. näher beschrieben werden:

? Abb. 3.1.2.: Zeigt die möglichen Zustände der Checkboxen, mit denen man den Policy-Editor be-dient.

Status
Auswirkungen
Aktiviert
= Wert wird in der Registry eingetragen
Wenn die Checkbox abgehakt ist, so wird die entsprechende Richtlinie durchgeführt. Dabei wird dem lokalen Computer, an dem der Benutzer gerade angemeldet ist, der dazugehörige Eintrag hinzugefügt. War diese Option bereits bei einem der früheren Anmeldeversuche aktiviert, so wird der Wert vom System nicht verändert.
 
Deaktiviert
= Wert wird aus Registry gelöscht
Ist das Kontrollfeld leer (weiß), so wird der ausgewählte Eintrag aus der Systemregistrierung entfernt. Hier sollte man allerdings mit einiger Vorsicht bei der Sache sein, denn solche Veränderungen können das System auch in einen irreparablen Zustand versetzen.
 
Teilweise aktiviert
= Wert wird nicht verändert
Wenn das Kontrollfeld grau gefüllt ist, dann bleiben die Einstellungen des letzten Anmeldungsversuches bestehen. Windows NT Workstation verändert dabei keine Werte in der Registry.
 

Zusätzlich zu den Informationen, die von den Checkboxen herausgelesen werden, können noch weitere Einstellungen vom Betriebssystem verlangt werden. Dies ist beispielsweise der Fall, wenn ein Hintergrundbild durch Systemrichtlinien vorgegeben wird. Hier funktioniert der einfache Klick auf das Kontrollkästchen nicht mehr, da die Richtlinie ja auch wissen muss, welches Bild nun eingebunden werden soll. So erscheint dann nach Aktivierung der Richtlinie im unteren Teil des Fensters ein zusätzliches Eingabeelement, welches je nach Bedarf des Werteintrages implementiert ist. Im Falle des Beispiels mit dem Hintergrundbild wäre dies ein Textfeld, welches den Dateinamen und den Pfad der Bilddatei enthält.


3.1.2. Betriebsmodi des Systemrichtlinieneditors

Wie wir bereits wissen ist der Systemrichtlinieneditor ein graphisches Werkzeug zur Bearbeitung der Registry. Daher bietet er neben der Erstellung von Systemrichtlinien auch eine Möglichkeit zum direkten Eingriff in die Registrierung. Man unterscheidet dabei zwischen zwei Modi:

· Registrierungsmodus: Hierbei wirken sich die Veränderungen sofort nach dem Setzen der Checkboxen aus. Jedoch können die Eingriffe nur an einem Rechner vorgenommen werden, was heißt, dass die Einträge nur die Registrierung des lokalen Computers betreffen.

 

Weiters kann man in diesem Modus eine Verbindung zu einem beliebigen Computer des Netzwerkes aufbauen und dessen Registry verändern. Aber auch hier gilt, dass die Veränderungen immer nur auf eine Workstation zutreffen. Aufgrund dieser beschränkten Möglichkeiten spielt der Registrierungsmodus in Netzwerken keine Rolle, da er eher zum Testen von Einstellungen an einem Computer verwendet wird.

 

· Systemrichtlinienmodus: In diesem Modus bietet der Systemrichtlinieneditor viel komplexere Möglichkeiten, die zum Teil schon behandelt wurden. Der größte Vorteil ist es, Policies für spezielle Benutzer oder Benutzergruppen zu erstellen, die diese dann im gesamten Netzwerk kontrollieren können.

 

 

3.2. Vorlagedateien

Um die Registrierung mit dem Systemrichtlinieneditor zu bearbeiten sind weiters noch Vorlagedateien (ADM-Dateien) vonnöten, die Informationen über die Registrierungsschlüssel beinhalten, die von der Richtlinie betroffen sind. Dabei kann der Policy-Editor nur Registry-Einträge verändern, die zuvor in einer Vorlage definiert worden sind.

? Abb. 3.2.1.: Hier ist ein kleines Listing abgebildet, welches die Option ”Anzeige” aus der Systemsteuerung entfernt.

Hinweis: Das Erstellen von eigenen Richtlinien ist ein eigener Teil dieser Arbeit, wo auch die Skriptsprache von Microsoft ausführlich erklärt wird.

CLASS USER

 

CATEGORY !!ControlPanel

CATEGORY !!CPL_Icons

 

KEYNAME “Control Panel\don’t load”

POLICY !!CPL_DESK_Disable

VALUENAME desk.cpl

VALUEON “yes” VALUEOFF “”

END POLICY

 

END CATEGORY

END CATEGORY

 

 

Bei den ADM-Dateien handelt es sich um reine ASCII-Textdateien, die in einer Microsoft-propietären Skriptsprache verfasst sind. Abhängig vom Zustand einer Checkbox werden dann die betreffenden Werte in der Registrierung angepasst.

Der Policy-Editor kann nun eine oder mehrere Vorlagedateien zugleich verwenden und mit ihnen eine Systemrichtlinie erstellen.

Dazu müssen die ADM-Dateien aber zuerst noch in das Verzeichnis %SYSTEMROOT%\Inf kopiert werden, da sie hier vom Systemrichtlinieneditor standardmäßig gesucht werden. Dies gilt auch für jene Dateien, die bereits im Lieferumfang des Editors enthalten sind.

Ein weiteres wichtiges Feature, vor allem für jene, die selbst Vorlagedateien schreiben, ist der Syntaxchecker. Dieser untersucht den Quellcode einer ADM-Datei beim Einbinden in den Systemrichtlinieneditor auf mögliche Fehler und gibt auch die genaue Zeile zurück, wenn ein solcher gefunden wird. Denn sollte man mit schlechten Vorlagedateien herumspielen, so kann das Betriebssystem schlimme Folgeschäden erleiden.

Vorgefertigte Vorlagedateien werden von Firmen wie Microsoft oder Novell geliefert, die sich vor allem um die Sicherheit in Netzwerken Gedanken machen. Hierbei ist vor allem der Microsoft Zero Administration Kit (Zak) hervorzuheben, der einige nützliche ADM-Dateien enthält (z.B.: Vorlagen für Microsoft Office 97).

Noch nicht genauer behandelt wurden bis jetzt die beiden Vorlagedateien (common.adm und winnt.adm), die mit dem Betriebssystem mitgeliefert werden. Eine Beschreibung ihrer Einstellungsmöglichkeiten bietet die folgende Tabelle.

? Abb. 3.2.2.: Eine Darstellung der vorgefertigten Vorlagedateien, die bereits mit Windows NT mitgeliefert werden.

Datei
Eigenschaften
Common.adm
Richtlinienkategorien für Computer
· Netzwerk enthält die Systemrichtlinie für manuelle und automatische Downloads der Richtlinie und den Lastenausgleich.
· System legt für SNMP Parameter fest und kann das Starten bestimmter Programme beim Systemstart erzwingen.
 
Richtlinienkategorien für Benutzer
· Systemsteuerung kann den Zugriff auf die Option Anzeige in der Systemsteuerung einschränken.
· Desktop erlaubt die Vorgabe fester Hintergrund-bilder und Farbschemata für einen bestimmten Benutzer.
· Shell enthält diverse Einstellungen für Ein-schränkungen der Benutzerumgebung. So lässt sich zum Beispiel das Symbol Netzwerkumgebung oder die komplette Systemsteuerung in der Startleiste und auf dem Desktop ausblenden.
· System legt fest, welche Programme der Benutzer
ausführen darf.


? Abb. 3.2.2.: Fort-setzung der Abbildung von Seite 10.

Winnt.adm
Richtlinienkategorien für Computer
· Windows NT Netzwerk enthält Richtlinien für die Laufwerksfreigabe auf Workstations und Servern.
· Windows NT Drucker gibt das Verhalten von installierten Druckern an.
· Windows NT Remote-Zugriff legt Richtlinien für den RAS-Dienst fest.
· Windows NT Shell lässt die Vorgabe fester Pfade für die Benutzerordner im Profil All Users zu, zum Beispiel im Startmenü.
· Windows NT System enthält Richtlinien für den Anmeldedialog und das Dateisystem.
 
· Windows NT Benutzerprofile beeinflusst das Systemverhalten beim Umgang mit Benutzerprofilen. So kann etwa festgelegt werden, dass Windows server-gespeicherte Benutzerprofile nach Zurückspeichern vom lokalen Laufwerk löscht.
 
Richtlinienkategorien für Benutzer
· Windows NT-Shell enthält Richtlinien, die das Kontextmenü von Dateien beeinflussen und darüber hinaus Einstellungen für benutzerdefinierte Ordner.
· Windows NT-System legt Aktionen fest, die das System während des Anmeldens ausführt, etwa die Abarbeitung der Datei autoexec.bat.
 

3.3. Download von Systemrichtlinien

Bevor man sich auf die beiden unterschiedlichen Möglichkeiten der Download-Prozedur von Systemrichtlinien konzentriert, sollte man zuerst das Ereignis des Downloads an sich unter die Lupe nehmen.

Dieser wird ausgeführt, wenn sich ein gültiger Benutzer an einem Windows-System anmeldet. Dabei wird bei jedem Login die Systemrichtlinie für den speziellen Benutzer vom Server heruntergeladen, was man auch als Download bezeichnet. Unter Windows NT gibt es zwei verschiedene Varianten des Downloads von Systemrichtlinien, die in der folgenden Aufstellung näher erklärt werden:

· Automatischer Download: Diese Option ist die Standardeinstellung von Windows NT, die sich vor allem für Windows NT-Domänen oder NetWare-Netzwerke anbietet.

Dabei wird die Systemrichtlinie auf dem Primary Domain Controller der NT-Domäne im Verzeichnis %SYTEMROOT%\System32\Repl\Import\Scripts gelagert.


Meldet sich nun ein Benutzer am Netzwerk an, überträgt das System die Richtlinie automatisch und verarbeitet sie. Diese Prozedur sucht auf den Servern immer nach einer Datei namens ntconfig.pol. Da sich diese Einstellung nicht verändern lässt, ist diese Namenskonvention immer zu beachten.

Weiters sollt man wissen, dass der automatische Download nur bei 32-Bit Netzwerkclients funktioniert (lokale Computer mit Windows 95 oder Windows NT 4.0).

· Manueller Download: Die Bezeichnung manueller Download ist bei dieser Vorgangsweise ein wenig irreführend, da es sich hierbei eigentlich auch um einen automatischen Download handelt, den man jedoch auf jedem Client manuell vorbereiten muß. Die Richtliniendatei kann dann aber in jedem beliebigen Verzeichnis liegen. Außerdem kann eine Richtlinie selbst die Information enthalten, ob nun ein manueller Download stattfinden soll, und weiters den Pfad zur Richtliniendatei angeben.

 

Die Informationen, die man für den manuellen Download benötigt, werden wiederum in der Registrierung jedes Rechners eingetragen. Zuständig dafür sind die Werte innerhalb des Schlüssels HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Update. Der Wert UpdateMode vom Typ REG_DWORD bestimmt die Art des Downloads (1 – bedeutet automatischer Download, 2 – manueller Download). Ist der manuelle Download gesetzt, so gibt der Wert NetworkPath vom Typ REG_EXPAND_SZ den Pfad zu den Richtliniendateien an.

3.4. Geltungsbereich von Systemrichtlinien

Wie schon öfters erwähnt lädt ein Windows-System bei jeder Anmeldung eines Benutzers die Richtlinie vom Server und trägt die darin festgehaltenen Einstellung in die lokale Registrierung ein.

Zunächst übernimmt das Betriebssystem die Richtlinien für den Standardbenutzer und den Standard-Computer in HKEY_CURRENT_USER beziehungsweise HKEY_LOCAL_ MACHINE.

Existieren nun individuelle Einstellungen für den Computer, an dem sich der Benutzer gerade angemeldet hat, so verarbeitet Windows diese als nächstes. Da Rechner in einem Windows NT-Netzwerk immer eindeutige Namen haben müssen, erkennt das System den jeweiligen Computer und die für ihn gültige Richtlinie. Dabei kann es vorkommen, dass zuvor geänderte Einträge für den Standard-Computer wiederum überschrieben werden. Dies sollte normalerweise ein gewünschter Effekt sein, den ein schlauer Administrator zuvor geplant haben sollte.

Im Gegensatz zu Computerrichtlinien gestaltet sich die Planung für Benutzer und Benutzergruppen etwas schwieriger, da die Möglichkeiten hier komplexer sind. Wie auch schon bei den Maschinenrichtlinien gibt es eine Richtlinie namens Standardbenutzer, deren Einstellungen als erstes in die Registrierung übernommen werden. Als nächstes wird geprüft, ob eine Richtlinie für den individuellen Benutzer existiert, der sich gerade angemeldet hat. Ist dies der Fall, so werden die Parameter in die Registrierung übernommen. Die Gruppenrichtlinien werden dabei nicht beachtet.


Gibt es aber diese individuelle Systemrichtlinie nicht, so testet Windows die Gruppenmitgliedschaft des Anwenders.

Ist der angemeldete Benutzer Mitglied einer oder mehrerer Gruppen, für die auch noch jeweils getrennte Systemrichtlinien existieren, so trägt das System diese Einstellungen nach und nach in die Registrierung ein.

Dabei arbeitet sich das System von der Gruppe mit der niedrigsten Priorität bis zu der mit der höchsten Wichtigkeit durch. Somit können Werte für eine Gruppe mit höherer Priorität diejenigen für eine mit entsprechend niedriger Priorität überschreiben und eventuell sogar aufheben. Festlegen lassen sich die Gruppenprioritäten mit dem Systemrichtlinieneditor.


4. Programmieren einer Vorlagedatei

Nachdem in den vorhergegangenen Kapiteln vor allem die theoretische Umsetzung von Systemrichtlinien behandelt wurde, so folgt in diesem Abschnitt der praktische Teil. Dieser stellt die Programmierung einer Vorlagedatei in den Mittelpunkt, die das Herzstück jeder Systemrichtlinie bildet. Dabei wird eine propietäre Skriptsprache eingesetzt, die von Microsoft speziell für den Gebrauch mit Systemrichtlinien entwickelt wurde. Diese ist daher nicht gerade sehr umfangreich angelegt, bietet aber ausreichende Möglichkeiten zum Eingreifen in die Registrierung. Als Entwicklungsumgebung wird der Editor von Windows NT eingesetzt, der standardmäßig mit jedem Betriebssystem mitgeliefert wird.

Da nun die technischen Voraussetzungen ausreichend bekannt sind, will ich gerne die Aufgabenstellung beschreiben, die es in diesem Teil zu erfüllen galt. Hierbei sollte man beachten, dass schon einige Vorlagedateien von Microsoft oder von diversen Drittanbietern zur öffentlichen Verwendung zur Verfügung gestellt werden. Daher war es meine Aufgabe, eine ADM-Datei zu programmieren, deren Computer- und Benutzereinstellungen noch nicht von einer Standardvorlage, wie etwa winnt.adm oder common.adm, abgedeckt werden. Die detaillierte Aufgabenstellung setzt sich aus folgenden Punkten zusammen:

· Beim Einschalten des Computers soll eine benutzerdefinierte Nachricht angezeigt werden können.

· Die Informationsbox, die beim Drucken eines jeden Dokumentes automatisch erscheint, soll über die Systemrichtlinie aktiviert bzw. deaktiviert werden können.

· Ist ein angemeldeter Benutzer eine bestimmte Anzahl von Minuten inaktiv, so kann das System ihn nach einer gewissen Zeit automatisch abmelden. So können Computerarbeitsplätze in einem Netzwerk für andere Anwender freigemacht werden.

· Der Bildschirmhintergrund eines Benutzers soll mit Hilfe der Systemrichtlinien festgelegt werden können. Auch soll man das Hintergrundbild optional als Fläche darstellen können.

· Die Möglichkeit einzelne Laufwerke vor einem bestimmten Benutzer zu verstecken sollte implementiert werden.

· Windows NT bietet einem Administrator die Möglichkeit ein maximales Kennwortalter für Benutzer festzulegen. Die Richtlinie soll daher einen Benutzer eine gewünschte Anzahl von Tagen vor dem Ablaufen des Kennwortes benachrichtigen.

· Der voreingestellte Windows NT-Installationsordner, in dem alle Setup-Dateien vom Betriebssystem automatisch gesucht werden, soll verändert werden können.

· Eine Richtlinie soll erstellt werden, die eine Liste mit jenen Programmen in der Registrierung speichert, die von einem bestimmten Benutzer verwendet werden dürfen. Alle Anwendungen, die nicht auf dieser Liste enthalten sind, bleiben für den Benutzer gesperrt.

· Die Erstellung einer Richtlinie, deren einziges Ziel es ist, die Verwendung von drei Checkboxen zu demonstrieren.

Bevor ich zur Erklärung komme, wie man eine Vorlagedatei programmiert, muss ich noch den Quellcode vorher abdrucken. Diesen sollte man schon im Vorhinein genauer studieren, da dies das Verständnis um einiges erleichtert.

1: CLASS MACHINE

2:

3: CATEGORY !!WinntInstall

4: POLICY !!InstallVerzeichnis1 58749hlt75pqy2q

5: KEYNAME "Software\Microsoft\Windows NT\CurrentVersion"

6:

7: PART !!InstallVerzeichnis2 EDITTEXT

8: VALUENAME "SourcePath" lq749h8575pqqy

9: END PART

10:

11: END POLICY

12:

13: POLICY !!SetupLaufwerk1

14: KEYNAME "Software\Microsoft\Windows\CurrentVersion\Setup"

15:

16: PART !!SetupLaufwerk2 EDITTEXT

17: VALUENAME "SourcePath"

18: END PART

19:

20: END POLICY

21: END CATEGORY

22:

23: CATEGORY !!BenutzerProfil

24: KEYNAME "Software\Microsoft\Windows NT\CurrentVersion\Winlogon"

25: POLICY !!PasswortAblauf

26:

27: PART !!PasswortTage

28: NUMERIC MIN 0 MAX 1000 SPIN 1

29: VALUENAME "PasswordExpiryWarning"

30: END PART

31:

32: END POLICY

33: END CATEGORY

34:

35: CATEGORY !!DruckInfo

36: KEYNAME "System\CurrentControlSet\Control\Print\Providers"

37: POLICY !!DruckInfoEinstellung

38:

39: VALUENAME "Netpopup"

40: VALUEON NUMERIC 1

41: VALUEOFF NUMERIC 0

42:

43: END POLICY

44: END CATEGORY

45:

46: CATEGORY !!AutomatischesAusloggen

47: KEYNAME "System\CurrentControlSet\Services\LanmanServer\Parameters"

48: POLICY !!Ausloggen1

49:

50: PART !!Ausloggen2

51: NUMERIC MIN 1 MAX 90 SPIN 1

52: VALUENAME "Disc"

53: END PART

54:

55: END POLICY

56: END CATEGORY

57:

58: CATEGORY !!EinlogInfo1

59: KEYNAME "Software\Microsoft\Windows NT\CurrentVersion\Winlogon"

60: POLICY !!EinlogInfo2

61:

62: PART !!LegalNoticeCaption EDITTEXT

63: VALUENAME "LegalNoticeCaption"

64: END PART

65:

66: PART !!LegalNoticeText EDITTEXT

67: VALUENAME "LegalNoticeText"

68: END PART

69:

70: PART !!LogonPrompt EDITTEXT

71: VALUENAME "LogonPrompt"

72: END PART

73:

74: END POLICY

75: END CATEGORY

76:

77:

78: CLASS USER

79:

80: CATEGORY !!Desktop

81: KEYNAME "Control Panel\Desktop"

82: POLICY !!Hintergrund

83:

84: PART !!HintergrundPfad EDITTEXT

85: VALUENAME "Wallpaper"

86: END PART

87: PART !!HintergrundFlaeche CHECKBOX

88: VALUENAME "TileWallpaper"

89: VALUEON "1" VALUEOFF "0"

90: END PART

91:

92: END POLICY

93: END CATEGORY

94:

95: CATEGORY !!LaufwerkSichtbar

96: KEYNAME "Software\Microsoft\Windows\CurrentVersion\Policies\Explorer"

97: POLICY !!LaufwerkeWegschalten1

98:

99: PART !!LaufwerkeWegschalten2 DROPDOWNLIST REQUIRED

100: NOSORT

101: VALUENAME "NoDrives"

102: ITEMLIST

103:

104: NAME !!LaufwA VALUE NUMERIC "1"

105: NAME !!LaufwB VALUE NUMERIC "2"

106: NAME !!LaufwC VALUE NUMERIC "4"

107: NAME !!LaufwD VALUE NUMERIC "8"

108: NAME !!LaufwE VALUE NUMERIC "16"

109:

110: END ITEMLIST

111: END PART

112:

113: END POLICY

114: END CATEGORY

115:

116: CATEGORY !!AppRestrict

117: KEYNAME Software\Microsoft\Windows\CurrentVersion\Policies\Explorer

118: POLICY !!AllowApps

119: VALUENAME RestrictRun

120: PART !!RestrictAppsList LISTBOX

121:

122: KEYNAME Software\Microsoft\Windows\CurrentVersion\Policies

123: \Explorer\RestrictRun

124: VALUEPREFIX ""

125: END PART

126: PART !!RestrictApps_Tip1 TEXT END PART

127: PART !!RestrictApps_Tip2 TEXT END PART

128: PART !!RestrictApps_Tip3 TEXT END PART

129: PART !!RestrictApps_Tip4 TEXT END PART

130: END POLICY

131: END CATEGORY

132:

133: CATEGORY !!InternetExplorer

134: KEYNAME "Software\Microsoft\Windows\CurrentVersion\InternetSettings"

135: POLICY !!InternetSicherheit

136:

137: PART !!ActiveXDownload CHECKBOX

138: VALUENAME "Code Download"

139: VALUEON "yes"

140: VALUEOFF "no"

141: END PART

142:

143: PART !!ActiveXEinschalten CHECKBOX

144: VALUENAME "Security_RunActiveXControls"

145: VALUEON NUMERIC 1

146: VALUEOFF NUMERIC 0

147: END PART

148:

149: PART !!ActiveXZulassen CHECKBOX

150: VALUENAME "Security_RunScripts"

151: VALUEON NUMERIC 1

152: VALUEOFF NUMERIC 0

153: END PART

154:

155: PART !!JavaZulassen CHECKBOX

156: VALUENAME "Security_RunJavaApplets"

157: VALUEON NUMERIC 1

158: VALUEOFF NUMERIC 0

159: END PART

160:

161: END POLICY

162: END CATEGORY

163:

164:

165: [strings]

166:

167: WinntInstall="Windows NT Setup"

168: InstallVerzeichnis1="Installationsverzeichnis von Windows NT"

169: InstallVerzeichnis2="Laufwerk bzw. Ordner, in dem sich die

170: Installationsdateien von NT befinden"

171:

172: SetupLaufwerk1="Setup Laufwerk von Windows NT"

173: SetupLaufwerk2="Laufwerk, von dem das Setup von Windows NT durchgeführt wurde"

174:

175: BenutzerProfil="Einstellung für Benutzerkonten"

176: PasswortAblauf="Warnung vor dem Ablauf des Benutzerkennwortes anzeigen"

177: PasswortTage="Wieviele Tage vor dem Ablaufen soll die Nachricht angezeigt

178: werden?"

179:

180: DruckInfo="Einstellungen für Drucker"

181: DruckInfoEinstellung="Druckinformation aus- oder einschalten"

182:

183: AutomatischesAusloggen="Automatisches Abmelden"

184: Ausloggen1="Abmelden eines Benutzers nach einer gewissen Zeit von Inaktivität"

185: Ausloggen2="Nach wievielen Minuten soll der Benutzer abgemeldet werden?"

186:

187: EinlogInfo1="Einstellung für das Anmelden"

188: EinlogInfo2="Meldung beim Anmelden eines Benutzers anzeigen"

189: LegalNoticeCaption="Text, der in der Titelleiste des Dialogfeldes ausgegeben 190: wird:"

191: LegalNoticeText="Text, der im Dialogfeld ausgegeben wird:"

192: LogonPrompt="Text, der am Anmeldebildschirm angezeigt wird:"

193:

194: Desktop="Windows Hintergrund"

195: Hintergrund="Einstellungen für Hintergrundbild"

196: HintergrundPfad="Pfad des Bildes eingeben (z.B.:%SYSTEMROOT%\winnt.bmp)"

197: HintergrundFlaeche="Hintergrund als Fläche darstellen"

198:

199: LaufwerkSichtbar="Laufwerkseinstellungen"

200: LaufwerkeWegschalten1="Laufwerke für Benutzer unsichtbar machen"

201: LaufwerkeWegschalten