Dateiverwaltung und Rechteverwaltung
Am Schulserver Ihres Gymnasiums in Köln liegen Klassenlisten, Klausuren, Noten und Schülerarbeiten. Sie können Ihre eigenen Dateien öffnen, aber nicht die Noten der Lehrkräfte, und kein Mitschüler kann Ihre Hausaufgabe löschen. Wer sorgt dafür? Am Ende der Seite können Sie erklären, wie ein Informatiksystem das mit Ordnern, Gruppen und Rechten regelt.
Ordnerstruktur und Benutzergruppen
Ein Dateisystem ordnet Dateien in einer Baumstruktur aus Ordnern. Der oberste Ordner heißt Wurzel (root). Jede Datei hat einen eindeutigen Pfad, z. B. /schule/lehrer/noten.xlsx.
Nicht jeder soll alles sehen. Deshalb gibt es Benutzerkonten, die in Gruppen zusammengefasst werden (z. B. lehrer, schueler, verwaltung). Rechte vergibt man dann einmal für die Gruppe, nicht für jede Person einzeln. Das spart Arbeit und verhindert Fehler: Kommt ein neuer Schüler, wird er nur in die Gruppe aufgenommen.
Eine Schule legt auf dem Server die Ordner Lehrer, Schueler und Verwaltung an. Erklären Sie, warum eine Ordnerstruktur mit Benutzergruppen sinnvoll ist.
Eine Schule legt auf dem Server die Ordner Lehrer, Schueler und Verwaltung an. Erklären Sie, warum eine Ordnerstruktur mit Benutzergruppen sinnvoll ist.
Zugriffsrechte in Unix: r, w, x
Unix-Systeme (Linux, macOS) kennen für jede Datei drei Rechte:
| Recht | Datei | Ordner |
|---|---|---|
r (read) |
Inhalt lesen | Inhalt auflisten |
w (write) |
Inhalt ändern | Dateien anlegen und löschen (Löschen hängt vom w-Recht des Ordners ab, nicht der Datei) |
x (execute) |
Programm ausführen | Ordner betreten |
Diese Rechte werden für drei Personenkreise getrennt vergeben: Besitzer (user), Gruppe (group) und alle anderen (others). Das ergibt neun Zeichen, immer in dieser Reihenfolge. Ein - bedeutet: Recht fehlt.
Nennen Sie die drei klassischen Zugriffsrechte in Unix-Systemen (r, w, x) und erklären Sie, was sie für eine Datei bedeuten.
Nennen Sie die drei klassischen Zugriffsrechte in Unix-Systemen (r, w, x) und erklären Sie, was sie für eine Datei bedeuten.
Eine Datei hat die Rechte rwxr-x---. Geben Sie an, welche Rechte der Besitzer, die Gruppe und alle anderen haben.
Eine Datei hat die Rechte rwxr-x---. Geben Sie an, welche Rechte der Besitzer, die Gruppe und alle anderen haben.
Oktale Schreibweise
Jedes Recht ist ein Bit: ja = 1, nein = 0. Eine Dreiergruppe ist also eine Dualzahl, und man schreibt sie als eine Oktalziffer. Die Wertigkeiten sind r = 4, w = 2, x = 1; man addiert.
| Gruppe | Dual | Oktal |
|---|---|---|
rwx |
111 | 7 |
rw- |
110 | 6 |
r-x |
101 | 5 |
r-- |
100 | 4 |
--- |
000 | 0 |
Drei Ziffern beschreiben alle neun Rechte: erst Besitzer, dann Gruppe, dann andere.
Die Rechte einer Datei lauten oktal 640. a) Wandeln Sie diese in die Schreibweise rwx um. b) Wer darf die Datei lesen, wer ändern? c) Geben Sie die oktale Schreibweise…
Die Rechte einer Datei lauten oktal 640.
- a) Wandeln Sie diese in die Schreibweise
rwxum.
- b) Wer darf die Datei lesen, wer ändern?
- c) Geben Sie die oktale Schreibweise für „Besitzer: alles, Gruppe: lesen und ausführen, andere: nichts“ an.
Rechtekonzept und minimale Rechte
Ein Rechtekonzept legt fest, welche Gruppe welche Rechte an welchen Ordnern und Dateien hat. Leitprinzip ist das Prinzip der minimalen Rechte (Least Privilege): Jeder bekommt nur die Rechte, die er für seine Aufgabe braucht.
Begründung: Fehler und Angriffe wirken nur im Rahmen der vorhandenen Rechte. Ein Schüler, der keine Notendatei ändern darf, kann sie auch nicht versehentlich überschreiben, und ein Schadprogramm, das unter seinem Konto läuft, kann sie nicht zerstören. Konten mit Administratorrechten (root) dürfen alles, auch Systemdateien ändern und Konten löschen; sie sollten nur für Verwaltungsaufgaben benutzt werden.
An einer Schule sollen Noten in der Datei noten.xlsx gespeichert werden. Lehrkräfte sollen lesen und schreiben, das Sekretariat nur lesen, Schülerinnen und Schüler gar…
An einer Schule sollen Noten in der Datei noten.xlsx gespeichert werden. Lehrkräfte sollen lesen und schreiben, das Sekretariat nur lesen, Schülerinnen und Schüler gar nicht.
- a) Entwerfen Sie ein Rechtekonzept mit Gruppen.
- b) Begründen Sie das Prinzip der minimalen Rechte.
- c) Nennen Sie ein Risiko, wenn alle Nutzer Administratorrechte hätten.
Ein Schüler hat versehentlich ein Skript mit den Rechten 777 auf dem Schulserver abgelegt, das ein Passwort im Klartext enthält. a) Erklären Sie die Bedeutung der Rechte…
Ein Schüler hat versehentlich ein Skript mit den Rechten 777 auf dem Schulserver abgelegt, das ein Passwort im Klartext enthält.
- a) Erklären Sie die Bedeutung der Rechte
777.
- b) Beschreiben Sie die Gefahren.
- c) Nennen Sie Maßnahmen, die sofort und langfristig ergriffen werden sollten.
Rollenbasierte Zugriffskontrolle
Bei der Vergabe an einzelne Personen bekommt jedes Konto seine eigenen Rechte. Bei der rollenbasierten Zugriffskontrolle (RBAC) werden Rechte an Rollen gebunden (z. B. Arzt, Pflegekraft, Verwaltung), und Personen erhalten eine oder mehrere Rollen.
| Einzelpersonen | Rollen | |
|---|---|---|
| Vorteil | sehr fein einstellbar | übersichtlich, wenig Aufwand bei Wechsel von Personen |
| Nachteil | unübersichtlich, fehleranfällig bei vielen Nutzern | Sonderfälle sind schwer abzubilden |
Rechte müssen regelmäßig überprüft werden: Menschen wechseln Aufgaben, verlassen die Schule oder das Unternehmen, und alte Rechte bleiben sonst bestehen. So entstehen unnötige Zugriffsmöglichkeiten, die Missbrauch oder Datenpannen begünstigen.
Vergleichen Sie die Rechteverwaltung über Benutzerrollen (rollenbasierte Zugriffskontrolle) mit der Vergabe von Rechten an einzelne Personen. a) Nennen Sie je zwei Vor-…
Vergleichen Sie die Rechteverwaltung über Benutzerrollen (rollenbasierte Zugriffskontrolle) mit der Vergabe von Rechten an einzelne Personen.
- a) Nennen Sie je zwei Vor- und Nachteile.
- b) Wenden Sie die rollenbasierte Variante auf ein Krankenhaus mit den Rollen Arzt, Pflegekraft und Verwaltung an.
- c) Begründen Sie, warum eine regelmäßige Überprüfung der Rechte wichtig ist.
Entwicklungsumgebung und Versionsverwaltung
Eine Entwicklungsumgebung (IDE, z. B. BlueJ, Eclipse, IntelliJ) fasst Werkzeuge für die Programmierung zusammen:
-
Editor mit Syntaxhervorhebung und Autovervollständigung,
-
Compiler (übersetzt den Quelltext in ausführbaren Code und meldet Syntaxfehler),
-
Debugger (führt das Programm schrittweise aus),
-
Projektverwaltung und Anzeige der Klassen, oft auch Testwerkzeuge.
Der Debugger setzt Haltepunkte und führt Zeile für Zeile aus. Man sieht die aktuellen Werte der Variablen und erkennt die Stelle, an der der Ablauf von der Erwartung abweicht. So findet man Laufzeit- und Logikfehler, die der Compiler nicht meldet.
Arbeiten mehrere Personen am selben Code, hilft eine Versionsverwaltung (z. B. Git). Jeder arbeitet in einer eigenen Kopie (Branch) und speichert Änderungen als nachvollziehbare Commits. Beim Zusammenführen (Merge) vergleicht das System die Änderungen und markiert Stellen, die beide Personen verändert haben. Nichts wird stillschweigend überschrieben, und man kann jeden früheren Stand wiederherstellen.
Datenschutz im Repository
In einem Repository landen schnell personenbezogene Daten (Namen, Schülerlisten, Passwörter). Die DSGVO verlangt Datensparsamkeit (nur so viele Daten wie nötig) und Zweckbindung (Daten nur für den Zweck, für den sie erhoben wurden). Bei einer Bewertung wägt man Interessen ab: Das Team will bequem zusammenarbeiten, die betroffenen Personen wollen ihre Daten geschützt wissen, die Schule trägt die rechtliche Verantwortung. Weil die Historie nichts vergisst, ist das Löschen später kaum möglich; besser ist es, solche Daten gar nicht erst einzuchecken.
Beschreiben Sie die Aufgaben einer Entwicklungsumgebung (IDE) und nennen Sie vier Funktionen (z. B. Editor). Erklären Sie, wie ein Debugger beim Finden eines Fehlers…
Beschreiben Sie die Aufgaben einer Entwicklungsumgebung (IDE) und nennen Sie vier Funktionen (z. B. Editor). Erklären Sie, wie ein Debugger beim Finden eines Fehlers hilft.
Ein Projektteam eines Gymnasiums in Dresden verwaltet seinen Programmcode in einem gemeinsamen Ordner. a) Entwerfen Sie ein Rechte- und Ordnerkonzept für Team,…
Ein Projektteam eines Gymnasiums in Dresden verwaltet seinen Programmcode in einem gemeinsamen Ordner.
- a) Entwerfen Sie ein Rechte- und Ordnerkonzept für Team, Betreuungslehrkraft und Außenstehende.
- b) Erläutern Sie, wie eine Versionsverwaltung (z. B. Git) Konflikte durch gleichzeitiges Bearbeiten verringert.
- c) Beurteilen Sie, welche Datenschutzprobleme entstehen, wenn personenbezogene Daten im Repository landen.
Zurück zum Anfang: Der Schulserver regelt den Zugriff über Benutzerkonten, Gruppen und Rechte pro Ordner. So dürfen Lehrkräfte Noten ändern, Schüler nur ihre eigenen Dateien.