Survey							
                            
		                
		                * Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Protection Models Yeong-Tay Timothy Sun September 27, 2011 Dennis Kafura – CS5204 – Operating Systems 1 Agenda  What is Protection (and why do we need it?)  A Simple Message Passing System  Collaborative Access Control Models         Access Matrix Role-Based Access Control (RBAC) Task-Based Access Control (TBAC) Team-Based Access Control (TBAC) Bell-LaPadula Lock and Key Spatial Access Control (SPACE) Context-Aware Access Control  Conclusion Dennis Kafura – CS5204 – Operating Systems 2 What is Protection?  Protection governs access to shared system assets  Unsolicited access may be malicious or simply unintentional  Having different protections in different system contexts is a core concept A Simple Message Passing System  Primitive Message System consists of isolated processes  Processes encapsulate their own collection of objects  Inter-process communication consists of passing message back and forth; message IDs cannot be forged  Communication protocols become complicated when multiple processes are involved  Cannot force a process to do anything, or to destroy it Implications for Access Control Models?  Should be applied and enforced at a distributed level  Should be generic and configurable (expressive)  Should support both fine and coarse granularity  Should be usable (transparent = good)  Should be easy to summarize (manageable)  Should support dynamic policies  Should perform reasonably (scalable) Collaborative Access Control Models (Access Matrix)  Object system has a subject-object relationship  Different domains have different access rights Access Matrix (2) Access Matrix (3)  Both implementations (ACLs, C-Lists) have disadvantages, dynamic changes to access rights not well-supported  Difficult to adapt to more complex schemes (competency, least privilege, etc.) without additional system context  Ownership may be subject to other system constraints Role-Based Access Control  Permissions assigned to roles rather than individual users  A role models a job function  Users can be assigned from one role to another Role-Based Access Control (2)  Early implementations not dynamic in their assignment of roles, did not account for context (passive vs. active)  Early implementations did not support role assignments to specific object instances Task-Based Access Control (TBAC)  Domains contain task-based contextual information  Access control changes dynamically w/ task progression Supports type-based, instance, usage-based access over RBAC Task-Based Access Control (2)  Context awareness remains tied to activities, tasks, workflow progression  JIT permission assignments could lead to race conditions  Mainly used to augment other access control models Team-Based Access Control (TMAC, C-TMAC)  Access rights associated with groups of users  User context, object context  Offers fine-grained control Team-Based Access Control (2)  Existing implementations are underdeveloped  Lacks self-adminstration capabilities of models like access matrices  Needs more context-awareness  Suitability for certain tasks is unclear Bell-LaPadula  Intended to control the proliferation of data  Uses access matrix for level clearance  ★ Property – information can only become more secure, not less Lock and Key  Similar but different from C-List  Involves Keys and Locks  Keys can change hands  Key doesn’t tell you capabilities it “unlocks” until it is used Spatial Access Control (SAC)  Transparent security mechanisms  Access governed by credentials  Does not allow for fine-grained control  Difficult to apply Context-Aware Access Control  Extends RBAC w/ environmental roles  Roles capture environment state  Activated based on environment conditions  Ubiquitous computing Conclusion   There are many things to consider when choosing a protection scheme for a system. No single protection model can address all of these issues but some excel at areas where others do not.