access control mechanisms
play

Access Control Mechanisms Week 6 1 CEN-5079: 7.March.2019 Why - PowerPoint PPT Presentation

Access Control Mechanisms Week 6 1 CEN-5079: 7.March.2019 Why Access Control Following authentication, we need to decide what the subject can access 1 Read F 1 OK 2 Bob Write to F Alice 2 F NO ! 3 Execute G G 3 OK


  1. Access Control Mechanisms Week 6 1 CEN-5079: 7.March.2019

  2. Why Access Control  Following authentication, we need to decide what the subject can access 1 Read F 1’ OK 2 Bob Write to F Alice 2’ F NO ! 3 Execute G G 3’ OK  How do we store this information? 2 CEN-5079: 7.March.2019

  3. In this lecture …  Access matrix model  Access control lists versus Capabilities  Role Based Access Control  File Protection Mechanisms  Security Policies  Models of Security  Some exercises 3 CEN-5079: 7.March.2019

  4. Access Matrix Model (Lampson 1971) Objects (and Subjects) G F r w x S S S r A u u u b b b j j j e e e r w x c c c rights B t t t s s s 4 CEN-5079: 7.March.2019

  5. Basic Abstractions  Subjects  Objects  Rights  The rights in a cell specify the access of the subject (row) to the object (column) 5 CEN-5079: 7.March.2019

  6. Users and Subjects  A subject is a program (application) executing on behalf of a user  A user may at any time be idle, or have one or more subjects executing on her behalf 6 CEN-5079: 7.March.2019

  7. Users and Subjects: Example Mail Application Word Processors Spreadsheet Bob.SECRET Database App USERS SUBJECTS 7 CEN-5079: 7.March.2019

  8. Objects  Anything on which a subject can perform operations (mediated by rights)  Usually objects are passive, for example:  File  Directory (or Folder)  Memory segment  But, objects can also be subjects with operations  kill  suspend  resume 8 CEN-5079: 7.March.2019

  9. Access Matrix Model Objects (and Subjects) G F r w x S S S r A u u u b b b j j j e e e r w x c c c rights B t t t s s s 9 CEN-5079: 7.March.2019

  10. Access Matrix Implementation  Access Matrix can be sparse  Space inefficient  Access Control Lists  Capabilities  Relations 10 CEN-5079: 7.March.2019

  11. Access Control List - ACL  Maintained for each object (or subject)  No entries when no permissions G: ACL A B B B r r w x Each column of the access matrix is stored with the object corresponding to that column 11 CEN-5079: 7.March.2019

  12. Capability  Unforgeable token that gives possesor certain rights  Object to which access is permitted  Right for the object Capability giving the right to r F read object F  How to make it unforgeable 1. Only OS can access capability – user gets a pointer 2. Signed capabilities – access control mechanism has key 12 CEN-5079: 7.March.2019

  13. Transfer Capability  One access right – transfer/propagate  Subject can pass copy of capability to others Capability giving the right to t F transfer capabilities for object F Carol can no longer transfer ! transfer transfer Carol Alice Bob r t t r r F F F F F 13 CEN-5079: 7.March.2019

  14. Capability List: C-List r F F w x G r F Alice Each row of the access matrix is stored with the subject corresponding to that row 14 CEN-5079: 7.March.2019

  15. Access Control Relations Subject Access Object A r F A w F A x F A r G B r G B w G B x G Commonly used in relational database management systems 15 CEN-5079: 7.March.2019

  16. In this lecture …  Access matrix model  Access control lists versus Capabilities  Role Based Access Control  File Protection Mechanisms  Security Policies  Models of Security  Some exercises 16 CEN-5079: 7.March.2019

  17. ACLs vs. Capabilities  ACL's require authentication of subjects  Capabilities do not require authentication of subjects, but do require  Unforgeability  Control of propagation of capabilities 17 CEN-5079: 7.March.2019

  18. ACLs vs. Capabilities: Access Review  ACL's provide for superior access review on a per-object basis  Who has access to this object  But hard to see to what a subject has access  How would you do that ?  Capabilities provide for superior access review on a per-subject basis  What capabilities does this subject have  But hard to see who has access to an object 18 CEN-5079: 7.March.2019

  19. ACLs vs. Capabilities: Revocation  How do you revoke access of a subject to an object  ACL's provide for superior revocation facilities on a per-object basis 1. Scan object’s ACL 2. Remove subject from list (if present)  But hard to revoke all rights of a subject  Capabilities provide for superior revocation facilities on a per-subject basis  But hard to revoke all rights on an object (for all subjects) 19 CEN-5079: 7.March.2019

  20. ACLs vs. Capabilities: In the Real World  The per-object basis usually wins  Most OSs protect files by means of ACL's  Operations centered on objects  Unix: use an abbreviated form of ACL's with just three entries • owner • group • other 20 CEN-5079: 7.March.2019

  21. In this lecture …  Access matrix model  Access control lists versus Capabilities  Role Based Access Control  File Protection Mechanisms  Security Policies  Models of Security  Some exercises 21 CEN-5079: 7.March.2019

  22. Role Based Access Control (RBAC) Permission-Role User-Role Assignment Assignment USERS PERMISSIONS ROLES  A user’s permissions are determined by the user’s roles  Rather than identity or clearance  Roles can encode arbitrary attributes 22 CEN-5079: 7.March.2019

  23. Basic RBAC User-Role Permission-Role Assignment Assignment USERS ROLES PERMISSIONS ... SESSIONS 23 CEN-5079: 7.March.2019

  24. Permissions  Similar to capabilities  Object on which permission is granted  Right granted  Primitive rights  read, write, append, execute  Permissions are positive  No negative permissions or denials 24 CEN-5079: 7.March.2019

  25. Roles as Policy  A role brings together  A collection of users and  A collection of permissions  Different from groups  Groups are often defined as …  A collection of users 25 CEN-5079: 7.March.2019

  26. Users  Human beings or  Other active agents  Each individual should be known as exactly one user  User-Role Assignment  A user can have many roles  Each role can be assigned to many users  Sessions  A user can invoke multiple sessions  In each session a user can invoke any subset of roles that the user is a member of 26 CEN-5079: 7.March.2019

  27. Permission-Role Assignment User-Role Permission-Role Assignment Assignment USERS ROLES PERMISSIONS  A permission can be assigned to many roles  Each role can have many permissions 27 CEN-5079: 7.March.2019

  28. More Complex RBAC: Role Hierarchies Role Hierarchies Permission-Role User-Role Assignment Assignment USERS ROLES PERMISSIONS ... SESSIONS 28 CEN-5079: 7.March.2019

  29. Role Hierarchy: Example 1 Specialist Primary-Care Physician Physician Physician Health-Care Provider 29 CEN-5079: 7.March.2019

  30. Role Hierarchy: Example 2 Supervising Engineer Hardware Software Engineer Engineer Engineer 30 CEN-5079: 7.March.2019

  31. Role Hierarchy: Example 3 Director (DIR) Project Lead 1 Project Lead 2 (PL1) (PL2) Production 1 Quality 1 Production 2 Quality 2 (P1) (Q1) (P2) (Q2) Engineer 1 Engineer 2 (E1) (E2) Engineering Department (ED) PROJECT 1 PROJECT 2 Employee (E) 31 CEN-5079: 7.March.2019

  32. In this lecture …  Access matrix model  Access control lists versus Capabilities  Role Based Access Control  File Protection Mechanisms  Security Policies  Models of Security  Some exercises 32 CEN-5079: 7.March.2019

  33. File Protection Mechanisms  Multi-user system  Protect files from other users 1. All-None Protection 2. Group Protection 3. Temporary Acquired Permission 33 CEN-5079: 7.March.2019

  34. All-None Protection  Original IBM  By default, files were public  Anyone could r, w, del any file  Users assumed  Trustworthy  Know only their files’ names  Sysadmin could password protect certain files  So could users  Main Problem: Lack of trust 34 CEN-5079: 7.March.2019

  35. Group Protection  Unix systems: three classes  The user  Group of users associated with user - group  The rest of users – world  Groups  Members that share a common interest  Need to share  User can only belong to one group  User belonging to groups A and B  Can pass files from group A to group B 35 CEN-5079: 7.March.2019

  36. Group Protection (cont’d)  For each created file, the user  Assigns permissions for user, group, world  From the set r, w, x  Example: rwx rw- r--  Chmod 764 filename  Suitable for paper shared by group  Main Problem: User can belong to one group 36 CEN-5079: 7.March.2019

  37. Temporary Acquired Permissions  Unix systems  set userid (suid)  Only for executable files  If set, the file executes with the permissions of the owner, not the executor  Example:  passwd – operation that changes user passwd  Only the system can change passwords – access the password file  But users should be able to invoke passwd  passwd is suid: it executes with system privileges 37 CEN-5079: 7.March.2019

Recommend


More recommend