M 4.120 Konfiguration von Zugriffslisten auf Lotus Notes Datenbanken
Verantwortlich für Initiierung: Leiter IT, IT-Sicherheitsmanagement
Verantwortlich für Umsetzung: Administrator
Eine der wichtigsten Sicherheitsmechanismen eines Notes-Servers ist die Zugriffskontrolle auf Datenbanken. Hiermit kann gesteuert werden, welcher Benutzer mit welchen Rechten auf eine Notes Datenbank zugreifen kann. Nachdem ein Client (Notes-Client oder Browser) die allgemeine Zugangskontrolle auf einen Server passiert hat (siehe M 4.119 Einrichten von Zugangsbeschränkungen auf Lotus Notes Server), kommt die Zugriffskontrolle auf Datenbanken zur Anwendung. Damit der Schutz für die in den einzelnen Datenbanken enthaltenen Daten gewährleistet werden kann, müssen die Zugriffslisten (Access Control Lists, ACLs) für jede Datenbank korrekt eingestellt werden. Dabei sind folgende Aspekte zu beachten:
- Für jede Datenbank ist ein Zugriffskonzept zu entwerfen.
-
Datenbanken können unter Notes grob in zwei Gruppen eingeteilt werden:
- Systemdatenbanken, die für den Ablauf des Notes-Systems notwendig sind (z. B. Protokolldatenbanken, Datenbank zur Zertifikatsverwaltung), und
- Datenbanken, die produktive Daten enthalten (z. B. Projektdatenbanken).
- Alle Systemdatenbanken müssen mit restriktiven Zugriffsberechtigungen geschützt werden, beispielsweise names.nsf, admin4.nsf, catalog.nsf, log.nsf, event4.nsf, domcfg.nsf, domlog.nsf, setup.nsf, homepage.nsf, certlog.nsf.
Hinweis: Je nach Serverkonfiguration existieren einige der genannten Datenbanken nicht oder es sind zusätzliche vorhanden. - Wenn eine gruppenbasierte Zugriffskontrolle eingesetzt wird, sollten alle Benutzer aus der Zugriffsliste entfernt werden. Mindestens einer Gruppe müssen "Manager"-Rechte zugeordnet werden. In der Regel wird beim Erzeugen einer Datenbank der Benutzer, der die Datenbank erzeugt (in der Regel ein Administrator), automatisch mit "Manager"-Rechten in die ACL eingetragen. Auch dieser Eintrag sollte entfernt werden, damit nur noch gruppenbasierte Rechte übrigbleiben, aber erst dann, wenn alle administrativen Einstellungen an der Datenbank erfolgt sind.
- Bei der Konfiguration der Datenbank-Zugriffsrechte sollte nicht davon ausgegangen werden, dass für den Server Zugangsbeschränkungen gelten. Dies vermeidet Sicherheitslücken, wenn sich Zugangsbeschränkungen auf Server ändern oder Fehler enthalten.
- Auf produktiven Datenbanken sollten keine "Designer"-Rechte vergeben werden. Für Veränderungen am Datenbankdesign sollte ein Change-Management existieren, das einen geregelten Update-Zyklus erlaubt und beispielsweise die Phasen Antrag mit Begründung, Entscheidung, Umsetzung, Test, Einführung umfasst.
- ACL-Listen haben bei Client-lokalem Zugriff keine Wirkung. Ein Benutzer hat in der Regel volle Kontrolle über eine Datenbank oder Datenbankreplik, die auf dem Client-Rechner gespeichert ist. Insbesondere kann er Veränderungen an der Datenbank-ACL vornehmen und sich damit "Manager"-Rechte zuweisen.
- Die Option "Konsistente ACL über alle Repliken erzwingen" kann nicht dazu benutzt werden, das Durchsetzen der ACL im lokalen Zugriff zu erzwingen, da das entsprechende "Flag" durch existierende Administrationswerkzeuge zurückgesetzt werden kann.
- Die Replikation einer Datenbank-ACL über Domänengrenzen hinweg ist nicht ohne weiteres möglich, da sich die Namensräume in der Regel unterscheiden.
- Der ACL-Eintrag "-Default-" legt die Berechtigungen für Benutzer fest, die durch keinen anderen ACL-Eintrag erfasst werden. In der Regel soll solchen Benutzern kein Zugriff erlaubt werden ("No Access"). Die voreingestellten Rechte dieses Eintrags sind immer zu überprüfen und gegebenenfalls zu verändern.
- Der ACL-Eintrag "-Anonymous-" legt die Berechtigungen für Benutzer fest, die sich nicht authentisiert haben (falls der Server das anonyme Verbinden erlaubt). Zur Zugriffsteuerung für anonyme Benutzer sollte dieser Eintrag in jeder ACL enthalten sein. Fehlt der Eintrag, so kommen in der Regel die Rechte des "-Default-"-Eintrages zur Anwendung.
- Es müssen nicht nur Benutzern, sondern auch Servern Zugriffsrechte auf eine Datenbank eingeräumt werden. Dies gilt insbesondere für Datenbanken, die repliziert werden sollen.
- Neben Zugriffsrechten können auch so genannte Rollen zur Zugriffssteuerung in Skripten und Agenten einer Datenbank zum Einsatz kommen. Auch die Zuteilung der Rollen muss im Rahmen der Zugriffsplanung berücksichtigt werden.
Ergänzende Kontrollfragen:
- Existiert für jede Datenbank ein Zugriffskonzept?
- Werden die ACL-Veränderungen auf wichtigen Datenbanken regelmäßig überprüft (ACL-Log)?