Bei der Zugriffskontrolle hat sich in den letzten Jahrzehnten das Rollen-basierte Modell etabliert, das die einzelnen User einer oder mehreren zentral definierten Rollen mit den jeweiligen Rechten zuordnet. Doch in den heutigen heterogenen wie komplexen IT-Landschaften stößt dieses System zunehmend an seine Grenzen.
Seit drei Jahrzehnten werden Zugriffe auf Daten vornehmend durch Rollen geschützt. Diese werden von Applikationen direkt überprüft, oder auch durch »Access Manager«, welche den Vorteil haben, mehrere Systeme durch eine zentrale Konfiguration zu schützen. Dieses Rollen-basierte Management (im Englischen RBAC - Role Based Access Control) hat den Vorteil, dass es relativ leicht zu verstehen ist. Bei einer Betriebsprüfung lassen sich durch Vergleich von Ist- und Soll-Zuständen feststellen, ob Benutzer korrekt autorisiert sind. Konflikte - sowie die Befähigung sowohl einen Auftrag zu erteilen als auch diesen zu genehmigen ist normalerweise ein klarer Verstoß gegen die Pflichtentrennung (»Separation of Duties«). Auf diese Verstöße sind besonders bei Audit-Prozeduren zu achten, und lassen sich durch die Definition von »toxischen Rollenkombinationen« erkennen.
Heile Welt? Auf der ersten Anschein schon - so ist doch das Konzept des Rollen-basierten Zugriffs leicht zu verstehen. Allerdings sieht es in der Praxis ungemein komplizierter aus; das Konzept kommt zunehmend ins Wanken in einer IT-Landschaft, die zunehmend komplexer und verteilter wird. Mehrere Probleme müssen aufwendig aus der Welt geschaffen werden.
Zum Einen gibt es doch wesentlich mehr Faktoren als eine »Rolle«, die mitbestimmen müssen, ob eine Person Zugriff auf bestimmte Daten oder Systeme erlangen soll. Nehmen wir als Beispiel einen »Sachbearbeiter«, der Einblick auf bestimmte Prozesse von bestimmten Kunden benötigt.
Es ist nun einmal nicht genug, allen »Sachbearbeitern« kompletten Zugriff auf Daten aller Kunden zu erlauben - vielmehr nur den Einblick in die Daten von den Kunden, die dem Sachbearbeiter zugeteilt wurden, zu erlauben. Dies bedeutet, dass es noch zusätzliche Faktoren geben muss, welche bei einer Zugriffsentscheidung mitspielen müssen. Meist sind es die Applikationen selbst, welche die Entscheidung treffen - und somit eine gewisse »hardkodierte« Logik beinhalten. Beim Zusammenspiel von mehreren unterschiedlichen Applikationen, die durch unterschiedliche interne Logik über Zugriff entscheiden, ist es somit schwierig, eine homogene Zugriffskontrolle zu gestalten.