Sicherheitskonzepte für die Programmierung

Rollenkonzepte

Der Kernpunkt bei der Entwicklung einer Anwendung ist die Frage, ob es sinnvoll oder erforderlich ist, ein Rollenkonzept zu erarbeiten. Es gilt also zu klären, ob es innerhalb der Anwendung Bereiche gibt, für die spezielle Zugriffsberechtigungen erforderlich sind oder ob ein Benutzer, der beispielsweise Editor-Zugriff hat, alle Dokumente in der Datenbank in gleicher Weise nutzen darf. Sobald man unterschiedliche Berechtigungen – und sei es nur für spezielle Konfigurationsdokumente – benötigt, ist ein Rollenkonzept unerlässlich.

Dabei müssen die Aufgaben definiert werden, die spezielle Rollen erfordern. Es bietet sich an, eine Liste der Masken, Agenten und anderer Designelemente mit speziellen Einschränkungen für die Nutzung zu erstellen und dieser Liste die Nutzergruppen zuzuordnen. Die Liste kann als Basis für die Beschränkung der Anzahl an Rollen dienen. Letztlich gilt es, den Kompromiss zwischen der erforderlichen Anzahl spezieller Rollen und den Anforderungen eines differenzierten Sicherheitskonzepts zu finden.

Bild 1: Auch Standard-Datenbanken arbeiten oft mit Rollen, wobei zwischen dem Erstellen, Ändern und Lesen häufig unterschieden wird.
Bild 1: Auch Standard-Datenbanken arbeiten oft mit Rollen, wobei zwischen dem Erstellen, Ändern und Lesen häufig unterschieden wird.

In den meisten Fällen wird man mit ein oder zwei speziellen Administratorenrollen, eventuell noch differenziert nach Lese- und Änderungsberechtigungen auskommen. Da die Rollen vor allem in Leser- und Autorenfeldern genutzt werden und es hier meist unterschiedliche Berechtigungen geben soll, ist eine solche „doppelte“ Definition von Rollen häufig unumgänglich – und auch bei gängigen Datenbanken wie dem Domino Directory zu finden (Bild 1).