Grundlagen
Benutzer, Konten und Berechtigungen
Sobald mehrere Menschen oder Programme einen Computer teilen, stellt sich eine Frage: Wer darf was? Betriebssysteme beantworten sie mit Benutzerkonten und Berechtigungen.
Warum Identitäten nötig sind
Ein Einzelplatzrechner ohne Konten behandelt jede Eingabe gleich. Das ist einfach, aber jede Aktion kann dann auch jede Datei verändern. Mehrbenutzersysteme ordnen deshalb jedem laufenden Programm eine Identität zu: das Konto, unter dem es gestartet wurde. Anhand dieser Identität entscheidet das System, welche Zugriffe erlaubt sind.
Frühe Heimsysteme wie MS-DOS 6.22 kannten kein solches Modell im Alltag. UNIX-artige Systeme und die Windows-NT-Linie waren dagegen von Grund auf für mehrere Benutzer ausgelegt.
Benutzer, Gruppen und Administratoren
Ein Benutzerkonto steht für eine Person oder einen Dienst. Gruppen fassen Konten zusammen, damit Rechte nicht für jede Person einzeln vergeben werden müssen. Ein besonders privilegiertes Konto darf das System selbst verwalten: unter UNIX heißt es traditionell root, unter Windows gibt es die Rolle des Administrators.
Gute Praxis ist, im Alltag mit eingeschränkten Rechten zu arbeiten und erhöhte Rechte nur gezielt zu verwenden. Diesem Gedanken folgt die Benutzerkontensteuerung, die mit Windows Vista eingeführt wurde: Programme laufen zunächst mit eingeschränkten Rechten, und für bestimmte Systemänderungen wird eine Bestätigung verlangt.
Lesen, Schreiben, Ausführen
Die grundlegenden Rechte lassen sich einfach beschreiben: Lesen erlaubt, den Inhalt zu sehen, Schreiben erlaubt, ihn zu ändern oder zu löschen, Ausführen erlaubt, eine Datei als Programm zu starten. Bei Verzeichnissen unter UNIX haben dieselben Rechte eine eigene Bedeutung: Lesen erlaubt, die Namen im Verzeichnis aufzulisten, Schreiben erlaubt, Einträge anzulegen, umzubenennen oder zu entfernen, und Ausführen erlaubt, das Verzeichnis zu betreten und darin enthaltene Dateien anzusprechen. Ob man eine Datei löschen darf, hängt deshalb vor allem von den Rechten am Verzeichnis ab, nicht nur von denen der Datei.
UNIX-artige Systeme vergeben diese drei Rechte klassisch getrennt für Besitzer, Gruppe und alle anderen. Die Windows-NT-Linie verwendet Zugriffslisten, in denen einzelnen Konten und Gruppen feinere Rechte zugewiesen werden können. Beide verfolgen dasselbe Ziel mit unterschiedlichen Mitteln.
Systemdateien und Benutzerdaten
Rechte trennen Bereiche: Systemprogramme und Konfiguration gehören dem System und sind für normale Konten nur lesbar. Jede Person erhält dagegen einen eigenen Bereich, etwa ein Home-Verzeichnis unter UNIX oder ein Benutzerprofil unter Windows. So kann man eigene Dateien frei ändern, ohne das System zu beschädigen.
Wie Dateien überhaupt geordnet werden, erklärt Dateisysteme, Dateien und Pfade. Auf Solaris 8 und IRIX 6.5 ist diese Trennung zwischen Systemverzeichnissen und Home-Verzeichnis gut zu beobachten.
Oberfläche und tatsächliches Rechtemodell
Eine Oberfläche kann Rechte nur darstellen, nicht ersetzen. Ein ausgegrautes Menü verhindert eine Aktion im jeweiligen Programm, aber die eigentliche Prüfung findet im Betriebssystem statt, wenn ein Prozess auf eine Datei zugreift. Umgekehrt kann ein Einzelbenutzersystem mit Anmeldebildschirm aussehen wie ein Mehrbenutzersystem, ohne Dateien wirksam zu trennen.
Windows Me und Windows 2000 erschienen zur selben Zeit, gehören aber zu verschiedenen Linien. Windows Me steht in der 9x-Linie: Es kannte zwar Benutzerprofile, trennte Dateien und Systembereiche aber nicht wirksam nach Konten. Windows 2000 gehört zur NT-Linie, die auf Konten und Zugriffsrechte ausgelegt ist, etwa über Zugriffslisten im Dateisystem NTFS. Warum das eine Frage des Unterbaus ist, erklärt Kernel und Benutzeroberfläche.
Rechte in den Simulationen
Einige Simulationen bilden einen Schreibschutz für Systembereiche nach: Das eigene Home-Verzeichnis ist beschreibbar, Systemverzeichnisse nicht. Das ist eine vereinfachte Nachbildung im Browser, kein echtes Rechtemodell und kein Zugriff auf Konten deines Computers. Probiere es in der IRIX-Simulation aus.