Objektorientierter Zugriffsschutz in RACCOON Roman Kober, Manuel Koch, Cristian Oancea FU Berlin
Gliederung Problem Zugriffsschutz Corba Standard-Zugriffschutzmodell View-Based Access Control Raccoon Infrastruktur Raccoon Fallstudien
Sicherheitsproblem Management Almost all security failures are in fact due to implementation and management errors. [Anderson1994] The worst problem with access control policy, especially in object systems, is that there's so much of it. [Blakley2000] Erhöhte Handhabbarkeit führt direkt zu mehr Sicherheit!
Wo liegen die Probleme? [...] we all know that unmastered complexity is at the root of the Misery. [Dijkstra2001] Ursprünge von Komplexität: Heterogenität Größenordnung Verteilung auch bei Entwicklung und Management (Zugriffsschutz-) Modelle, Tools Definiere Abstraktionen
CORBA Standard Zugriffschutzmodell Rechte-Familien s (set), g (get), u (use), m (manage) Kombinierbar (konjunktiv, disjunktiv) Neue Rechte können definiert werden Rechte bzgl. einzelner Operationen Required und Effective Rights Required: Zuordnung der generischen Rechte zu Operationen Effective: Zuordnung von Rechten zu Rollen, Gruppen, ... Manuel Koch, Freie Universität Berlin
Beispiel name service: interface NamingContext resolve a name list bindings bind a name bind a subcontext unbind names, destroy contexts Manuel Koch, Freie Universität Berlin
Effective vs. Required Rights Manuel Koch, Freie Universität Berlin
Nachteile Beschränkte Rechtemenge, low- level(“Object rwx”) Alle Objekte eines Typs werden gleich behandelt Keine dynamischen Rechteänderungen Keine Verbote Politiksemantik geht leicht verloren Manuel Koch, Freie Universität Berlin
View-based Access Control View Policy Language Deklarative Politiksprache (VPL) Wiederverwendung, Dokumentation, Kommunikation Fixes Objektmodell (CORBA-IDL) erlaubt statische Konsistenzprüfung Feinkörniger Schutz Dynamische Rechteänderungen Skalierbarkeit durch Aggregation: Gruppen, Rollen, Views, Typen, Domains
Views Sind “higher-level authorizations” gruppieren Rechte auf Operationen Constraints Beziehung zwischen Views interface Document { view Reading controls Document { void read(out string s); allow read void write(in string s); } void append(in string s); view Writing: Reading void correct(in string s); restricted_to Author { }; allow write append } Manuel Koch, Freie Universität Berlin
Access Matrix Model Object NamingCtx o2:Paper o3:Review o4:T Role resolve Employee bind read bind_new_ctx. Secretary resolve append correct list read read resolve read read TechAuthor list, bind, write view Resolving controls NamingContext { allow resolve; } view Binding : Resolving { bind; bind_new_context; Resolving Binding Manuel Koch, Freie Universität Berlin
Rollen Verhaltensabstraktion hierarchische Strukturen, Constraints roles Examiner Head: Examiner // Head is senior to // examiner President: Head maxcard 1 Lecturer: Examiner Candidate excludes Examiner Manuel Koch, Freie Universität Berlin
Schemas beschreiben dynamische Rechteänderungen IDL: VPL: interface Paper { Review submitReview( in string text ); }; VPL: schema SubmitSchema observes Paper { submitReview assigns Modifying on result to caller assigns ReviewReading on this to caller removes ReviewSubmitting on this from caller } Manuel Koch, Freie Universität Berlin
Infrastruktur für VPL Development Deployment Management VPL Compiler Verifier + Repositories Management View/Role/Domain Server und Management Tools Manuel Koch, Freie Universität Berlin
Development and Deployment VPL XML XML Precompiler Verifier XML Policy Descriptor IR Development Deployment IR VR Verifier RR Manuel Koch, Freie Universität Berlin
Laufzeitumgebung Policy Server Domain Server Role Server Policy Domain Role Mgmt. Domain Mgmt. Policy Mgmt. Domain Server Domain Policy Server Policy Roles Role Server request() Target Access Decision Interceptor Server Client Manuel Koch, Freie Universität Berlin
Rollen-Management 2:Rollen für Benutzer? Role Server 3: Rollen zertifikate? 4:Rollenzertifikate Server Client Target Access Decision 5:request() RZ Interceptor Interceptor Manuel Koch, Freie Universität Berlin
Domänenhierarchien Strukturierung und Generalisierung (Politiken gemäß Organisationsstruktur, Zuständigkeiten) Geltungsbereich der Elterndomäne umfasst Mitgliedsobjekte der Kinddomänen Hype Inc. Europe US Branch Anwendungs- domäne 2 Sales domäne n . . . R&D Anwendungs- domäne 1 Manuel Koch, Freie Universität Berlin
Metapolitiken zur Konfliktauflösung Konflikte zwischen Politiken für ein Objekt Domänen hierarchisch angeordnet bzw. gemeinsame Mitglieder Auflösung semantikabhängig Metapolitiken spezifisch für Politiktypen Metapolitiken werden Domänen zugeordnet Keine Meta-Metapolitiken: Ordnung: erste anwendbare Metapolitik gilt (= Metapolitik passenden Typs in der nächsten gemeinsamen Elterndomäne) Manuel Koch, Freie Universität Berlin
Related Work Views als Gruppierungskonzept Ponder Verteilte Objektsysteme [Hagimont94] Zugriffserlaubnisse im Bereich Datenbanken [Baldwin90, Scholl et al. 91] Ponder Sicherheits- und Managementpolitiken Allgemeiner als VPL Keine zugehörige Infrastruktur Views: fein-granularer und modularer. Auf spezielle Objekte. Bessere Integration der Managementkonzepte wie Gruppen und Rollen. Manuel Koch, Freie Universität Berlin
Raccoon Fallstudien Zugriffsschutz im Krankenhaus Zugriffsschutz in der Bank Manuel Koch, Freie Universität Berlin