RBAC Rollenbasierte Zugriffskontrolle von Alexander Gropp Betreuerin: Jutta Mülle
Motivation 2
Übersicht 1)Benutzergruppen 2)RBAC Standard (ANSI) 3)Erweiterung 4)Anwendung 3
Benutzer und Gruppen Nachteil: immer Rechte der mächtigsten Gruppe 1) Benutzergruppen 4
Beispielanwendung Software für Bauunternehmen beinhaltet: Finanzbuchhaltung Angebotserstellung Lohn 1) Benutzergruppen 5
Schulz Beispielanwendung Finanzbuchhaltung Bilanz erstellen, Einsicht Lohnabrechnung Auftrag anlegen Müller Angebotserstellung/Auft ragserfassung Schmidt Lohn Lohnabrechnung erstellen, Einsicht Lohnabrechnung alle Rechte Maier Systemverwalter 1) Benutzergruppen 6
RBAC Modell 1995 im IEEE vorgestellt ANSI Standard 2003 veröffentlicht besteht aus RBAC 0 bis RBAC 3 2) RBAC Standard 7
RBAC Versionen Kernmodell Hierarchie Einschränkungen Vereinigung (1+2) 2) RBAC Standard 8
Gundmodell (RBAC 0) Benutzer nimmt innerhalb einer Session bestimmte Rolle(n) an 2) RBAC Standard 0 9
RBAC 0 (formal) Benutzerzu ordnung BenutzerxR ollen Rechtezuor dnung RechtexRol len Rechte = 2 ObjektexOp erationen z.b. : Operatione n{r, w, x},objekte {Y, Z} zugeordnet { b B ebenutzer ( b, r ) : Rollen 2 Benutzer Benutzerzu ordnung } zugeordnet erechte : Rollen 2 Rechte 2) RBAC Standard 0 10
RBAC 0 (formal) SessionBenutzer : Session Benutzer SessionRollen : Session 2 Rollen verfügbaresessionrechte : Session 2 Rechte 2) RBAC Standard 0 11
Beispielanwendung einfachster Fall: Gruppen entsprechen den Rollen Frau Schmidt aus der Lohnabrechnung soll neue Mitarbeiter einstellen 2) RBAC Standard 0 12
Beispielanwendung Schulz Login Finanzbuchhaltung Bilanz erstellen, Einsicht Lohnabrechnung Auftrag anlegen Müller Login Angebotserstellung/Auft ragserfassung Schmidt Login Lohn Lohnabrechnung erstellen, Einsicht Lohnabrechnung alle Rechte Maier Login Systemverwalter 2) RBAC Standard 0 13
Hierarchie (RBAC1) 2) RBAC Standard 1 14
RBAC 1 (formal) RollenHierarchie RollenxRollen Halbordnung( ;reflexiv,antisymmetrisch,transitiv) aufrollen authorisiertebenutzer : Rollen 2 { b B r' r, ( b,r' ) Benutzer Benutzerzuordnung} ebensomitzugeordneterechte 2) RBAC Standard 1 15
Vererbungsregeln minimal Rolle: alle Benutzer maximal Rolle: alle Rechte 2) RBAC Standard 1 16
Vererbungsstrategien 2) RBAC Standard 1 17
Vererbungsstrategien beschränkt: eine Rolle kann von maximal einer anderen Rolle erben allgemein: eine Rolle kann von beliebig vielen anderen Rollen erben 2) RBAC Standard 1 18
Beispielanwendung Neue Mitarbeiterin Frau Schneider druckt Lohnabrechnungen benötigt Recht zur Einsicht der Lohnabrechnung 2) RBAC Standard 1 19
Beispielanwendung Bilanz erstellen Schulz Login Finanzbuchhaltung Auftrag anlegen Müller Login Angebotserstellung/Auft ragserfassung Einsicht Lohnabrechnung Schneider Mitarbeiter Lohn Lohn Schmidt Login Leiter Lohn Lohnabrechnung erstellen Maier Login Systemverwalter alle Rechte 2) RBAC Standard 1 20
Einschränkungen (RBAC 2) Vermeidung konfliktbehaftete Rollenannahme statische Einschränkungen verbieten einem Benutzer generell die Zuordnung zu konfliktbehafteten Rollen dynamische Einschränkungen verbietet die gleichzeitige Annahme innerhalb einer Session 2) RBAC Standard 2 21
Einschränkungen (RBAC 2) 2) RBAC Standard 2 22
Beispielanwendung Mitarbeiter der Finanzbuchhaltung dürfen nicht im Bereich Angebotserstellung arbeiten und umgekehrt 2) RBAC Standard 2 23
Beispielanwendung Schulz Login Finanzbuchhaltung statisch Bilanz erstellen, Einsicht Lohnabrechnung Auftrag anlegen Müller Login Angebotserstellung/Auft ragserfassung Schmidt Login Lohn Lohnabrechnung erstellen Maier Login Systemverwalter alle Rechte 2) RBAC Standard 2 24
Vereinigung (RBAC 3) 2) RBAC Standard 3 25
Funktionen Im Standard alle Funktionen zur jeweiligen RBAC Version definiert Beispiel: Benutzer hinzufügen AddUseruser : Nam e, userusers USERS' = USERS{ user } user_sessions' = user_sessions{ user } 2) RBAC Standard 26
GTRBAC Generalized Temporal RBAC setzt auf RBAC 3 auf Möglichkeit zeitlicher Einschränkungen Angabe als Tupel (I,P,D,E) I,P: Intervall I, Zeitabschnitte P, in denen das Tupel gültig ist D,E: Dauer D, für die das Ereignis E gültig ist 3) Erweiterung 27
Beispielanwendung Student arbeitet nebenher im Bereich Finanzbuchhaltung I: [1.1.2007 31.12.2007] P: Mo,Mi,Fr D: 4 Stunden E: Rollenzuordnung Studentische Hilfskraft Finanzbuchhaltung 3) Erweiterung 28
Anwendung für RBAC Nutzung im Authorisierungssystem für adaptive Workflows unterschiedliche Abstraktionsebenen erleichtern Management Ansicht in 3-Schichten Architektur RBAC Globale Einschränkungen Benut zer-rollen Zuordnung Rollen-Recht e Zuordnung Workflow Planungs-/Ziel Ebene Schem a Ebene Inst anz Ebene 4) Anwendung 29
Realität Welche Software nutzt RBAC? 4) Anwendung 30
Websphere (IBM) Produktlinie zur Anwendungsintegration basiert auf J2EE mit LDAP realisiert Quelle: http://www-1.ibm.com/support/docview.wss 4) Anwendung 31
Applicationserver (Oracle) basiert auf Java nutzt Java Authentication and Authorizaton Service (JAAS) bietet Rollenhierarchie (RBAC1) 4) Anwendung 32
Windows Server 2003 (Microsoft) Autorisierungsschittstelle Autorisierungsmanager Quelle: http://www.oszone.net 4) Anwendung 33
Fazit Einsatz nur sinnvoll in sehr großen Systemen bisher teilweise Umsetzung in bekannten, kommerziellen Systemen Vielen Dank für die Aufmerksamkeit!!! 34
Anhang (RBAC 2 formal) statischer SSD Fall ( Rollen 2 xn ) ( rs,n) SSD, t rs : t zugeordnet ebenutzer : n ( r t) = dynamische rfall : DSD ( Rollen 2 xn ) t rs,t SessionRol len ( s) t < n Anhang 35