Die Zugriffskontrolle wird durch den Cloud-Einsatz und hybride Modelle immer komplexer. Mittlerweile gibt es vier unterschiedliche Zugriffskontrollmodelle, darunter das Discretionary Access Control- Modell. Welches ist das richtige und wodurch unterscheiden sie sich?
1. Mandatory Access Control (MAC):
- Striktestes Modell, häufig im militärischen/staatlichen Bereich
- Nur Administratoren können Zugriffsrechte vergeben
- Basiert auf zwei Sicherheitsmodellen: Biba (fokussiert auf Datenintegrität) und Bell-LaPadula (fokussiert auf Vertraulichkeit)
2. Role-Based Access Control (RBAC):
- Zugriffsrechte basieren auf der Position/Rolle in der Organisation
- Vereinfacht die Administration
- Nachteil: Wenig flexibel bei Sonderberechtigungen außerhalb der Rolle
3. Discretionary Access Control (DAC):
- Am wenigsten restriktiv
- Benutzer haben volle Kontrolle über ihre Objekte
- Risiken durch mögliche Malware und unkontrollierte Rechteweitergabe
4. Rule-Based Access Control (RBAC):
- Dynamische Rechtevergabe basierend auf definierten Regeln
- Ermöglicht zeitbasierte oder andere konditionelle Zugriffsrechte
- Erfordert oft zusätzliche Programmierung
Zudem wird zwischen zwei wichtige Implementierungsarten unterschieden:
a) Die logische Zugriffskontrolle:
- Zugriffskontrolllisten (ACLs)
- Gruppenrichtlinien
- Passwörter
- Kontobeschränkungen
b) Die physische Zugriffskontrolle:
- Computersicherung (Hardware-Deaktivierung)
- Türsicherheitssysteme
- Papierbasierte Zugangsprotokolle
- Videoüberwachung
- Mantras (Schleusen-System)
Das Discretionary Access Control-Modell
Das neueste dieser Modelle ist das des Discretionary Access Control (zu Deutsch: benutzerbestimmbare Zugriffskontrolle). Hierbei handelt es sich um ein Zugriffssteuerungsmodell, bei dem der Eigentümer einer Ressource selbst bestimmen kann, wer welche Zugriffsrechte auf seine Ressourcen erhält.
Die Hauptmerkmale sind dabei:
- Der Besitzer einer Ressource etwa einer Datei oder eines Verzeichnisses) kann die Zugriffsrechte selbst festlegen und verwalten.
- Die Rechte können flexibel an einzelne Benutzer oder Gruppen vergeben werden.
- Der Eigentümer kann die Rechte jederzeit ändern oder weitergeben.
Einsatzzwecke:
- In Betriebssystemen wie Windows oder Unix/Linux für die Dateisystemverwaltung
- Bei der Verwaltung von Netzwerkressourcen
- In Datenbankmanagementsystemen
- In Dokumentenmanagementsystemen
Vorteile für Anwender:
- Flexibilität: Benutzer können selbständig entscheiden, wem sie Zugriff gewähren
- Einfache Handhabung: Die Rechtevergabe ist meist intuitiv über die Benutzeroberfläche möglich
- Schnelle Anpassung: Rechte können bei Bedarf sofort geändert werden
- Dezentrale Verwaltung: Keine Abhängigkeit von zentralen Administratoren für jede Rechteänderung
Ein praktisches Beispiel
In Windows können Sie als Besitzer eines Ordners festlegen, dass:
- Ihr Teamkollege Thomas Lese- und Schreibrechte erhält
- Die Praktikantin Sarah nur Leserechte bekommt
- Der Rest der Abteilung gar keine Zugriffsrechte erhält
Wo liegen die Vorteile für die Anwender und in welchen Umgebungen sind sie nützlich?
- Die Benutzer können eigenverantwortlich mit ihren Daten umgehen
- Dort wo eine flexible und schnelle Rechtevergabe wichtig ist
- Umgebungen in denen verschiedene Zugriffsebenen benötigt werden
- Dort, wo die Verwaltung dezentral erfolgen soll
Und wo liegen die Nachteile:
- Möglicher Kontrollverlust durch zu großzügige Rechtevergabe
- Risiko von Fehlkonfigurationen durch unerfahrene Benutzer
- Schwierigere zentrale Überwachung der Zugriffsrechte
Möchten Sie mehr Details zu einem bestimmten Aspekt von DAC erfahren?
Ab ins Detail
Nachfolgend gehen wir noch auf einige der wichtigen Aspekte der Discretionary Access Control im Detail ein.
Typische Zugriffsrechte im DAC-Modell umfassen:
1. Lesen (Read):
- Anzeigen von Dateiinhalten
- Öffnen von Dokumenten
- Auflisten von Verzeichnisinhalten
2. Schreiben (Write):
- Ändern von Dateien
- Erstellen neuer Dateien
- Löschen vorhandener Dateien
3. Ausführen (Execute):
- Starten von Programmen
- Ausführen von Scripts
- Betreten von Verzeichnissen
Nachfolgend einige Erläuterungen zur technischen Umsetzung:
- Access Control Lists (ACL): Listen, die für jede Ressource die Benutzer und ihre Rechte speichern
- Capability Lists: Listen der Ressourcen, auf die ein Benutzer zugreifen darf
- Access Control Matrix: Tabelle, die Benutzer, Objekte und Rechte verknüpft
Beispiel einer Access Control Matrix:
Als praktische Anwendungsszenarien wären zu nennen:
1. Projektarbeit:
- Projektleiter hat volle Rechte
- Teammitglieder haben Lese- und Schreibrechte
- Externe Berater haben nur Leserechte
2. Dokumentenverwaltung:
- Autor kann Dokument erstellen und ändern
- Reviewer können lesen und kommentieren
- Andere Mitarbeiter können nur lesen
3. Softwareentwicklung:
- Entwickler haben volle Rechte im Entwicklungsbereich
- QA-Team hat Leserechte und Ausführungsrechte
- Build-System hat spezifische Schreibrechte
Allerdings sollten sie folgende Sicherheitsaspekte bedenken:
1. Vererbung von Rechten:
- Rechte können von übergeordneten Verzeichnissen geerbt werden
- Individuelle Anpassungen sind möglich
- Hierarchische Strukturen werden unterstützt
2. Rechtedelegation:
- Benutzer können Rechte weitergeben
- Granulare Kontrolle über delegierte Rechte
- Möglichkeit zur zeitlichen Begrenzung
- Sicherheitsprobleme:
- Risiko von Trojanischen Pferden
- Möglicher Missbrauch durch zu viele Rechte
- Gefahr von unbeabsichtigter Rechteweitergabe
Best Practices:
1. Principle of Least Privilege:
- Nur notwendige Rechte vergeben
- Regelmäßige Überprüfung der Rechte
- Zeitliche Begrenzung wo sinnvoll
2. Dokumentation:
- Protokollierung von Rechteänderungen
- Dokumentation der Vergaberichtlinien
- Regelmäßige Audits
3. Schulung der Benutzer:
- Bewusstsein für Sicherheit schaffen
- Klare Richtlinien kommunizieren
- Regelmäßige Updates zu Best Practices