Role-Based Access Control CS461/ECE422 Spring 2012 - - PowerPoint PPT Presentation

role based access control
SMART_READER_LITE
LIVE PREVIEW

Role-Based Access Control CS461/ECE422 Spring 2012 - - PowerPoint PPT Presentation

Role-Based Access Control CS461/ECE422 Spring 2012 Reading Material Chapter 4, sec?ons 4.5 and 4.6 [SFK00] DAC vs RBAC DAC Users, Groups


slide-1
SLIDE 1

Role-­‑Based ¡Access ¡Control ¡

CS461/ECE422 ¡ Spring ¡2012 ¡

slide-2
SLIDE 2

Reading ¡Material ¡

  • Chapter ¡4, ¡sec?ons ¡4.5 ¡and ¡4.6 ¡
  • [SFK00] ¡
slide-3
SLIDE 3

DAC ¡vs ¡RBAC ¡

  • DAC ¡

– Users, ¡Groups ¡à ¡Permissions ¡

  • RBAC ¡

– Roles ¡à ¡Permissions ¡ – Users ¡à ¡Roles ¡ – Many-­‑to-­‑many ¡rela?ons ¡

  • Difference ¡between ¡groups ¡and ¡roles? ¡

– Groups: ¡collec?on ¡of ¡users ¡ – Roles: ¡

  • collec?on ¡of ¡permissions ¡and/or ¡users, ¡and ¡possibly ¡other ¡

roles ¡[S96] ¡

  • job ¡func?on ¡within ¡an ¡organiza?on ¡[text] ¡
slide-4
SLIDE 4

Basic ¡RBAC ¡Illustrated ¡

Role ¡1 ¡ Role ¡2 ¡ Role ¡3 ¡

Users ¡ Roles ¡ Permissions ¡ (Objects) ¡ Rela8ons: ¡

User ¡ Assignment ¡(UA) ¡ Permission ¡ Assignment ¡(PA) ¡

slide-5
SLIDE 5

Access ¡Matrix ¡Representa?on ¡

(Users, ¡Roles) ¡ (Roles, ¡Objects) ¡

  • ­‑ ¡Similar ¡to ¡DAC ¡ACM ¡
  • ­‑ ¡Roles ¡can ¡be ¡

Objects ¡

slide-6
SLIDE 6

RBAC ¡Reference ¡Models ¡[SCFY96] ¡

  • RBAC0 ¡

– Minimum ¡func?onality ¡

  • RBAC1 ¡

– RBAC0 ¡+ ¡Role ¡hierarchies ¡

  • RBAC2 ¡

– RBAC0 ¡+ ¡Constraints ¡

  • RBAC3 ¡

– RBAC0 ¡+ ¡RBAC1 ¡+ ¡RBAC2 ¡

slide-7
SLIDE 7

RBAC0 ¡– ¡Base ¡

  • Users: ¡individuals ¡with ¡access ¡to ¡the ¡system ¡
  • Role: ¡named ¡job ¡func?on ¡within ¡the ¡org ¡
  • Permission: ¡approval ¡of ¡a ¡par?cular ¡mode ¡of ¡access ¡to ¡objects ¡
  • Session: ¡mapping ¡between ¡a ¡user ¡and ¡a ¡subset ¡of ¡roles ¡
slide-8
SLIDE 8

RBAC1 ¡– ¡Role ¡Hierarchies ¡

  • Reflect ¡hierarchical ¡structure ¡of ¡roles ¡in ¡org ¡
  • Mathema?cally, ¡par?al ¡order ¡(reflexive, ¡

transi?ve, ¡an?-­‑symmetric) ¡

Example ¡of ¡Role ¡Hierarchy ¡ Limi?ng ¡the ¡scope ¡of ¡inheritance: ¡ Role ¡Hierarchy ¡with ¡private ¡roles ¡

slide-9
SLIDE 9

RBAC2 ¡– ¡Constraints ¡

  • Reflect ¡higher-­‑level ¡organiza?onal ¡policy ¡
  • Mutually ¡exclusive ¡roles ¡(U ¡à ¡R ¡and ¡R ¡à ¡P) ¡
  • Cardinality ¡– ¡maximum ¡number ¡with ¡respect ¡

to ¡role ¡

  • Prerequisite ¡– ¡can ¡assign ¡role ¡only ¡if ¡already ¡

assigned ¡prerequisite ¡role ¡

– Remember, ¡no ¡hierarchies ¡in ¡RBAC2 ¡

slide-10
SLIDE 10

RBAC3 ¡– ¡Consolidated ¡Model ¡

slide-11
SLIDE 11

NIST ¡RBAC ¡Model ¡[SFK00] ¡

  • RBAC ¡System ¡and ¡Administra?ve ¡Func?onal ¡

Specifica?on ¡

  • Three ¡categories ¡of ¡features/func?ons: ¡

– Administra8ve ¡func8ons: ¡create, ¡delete, ¡maintain ¡ RBAC ¡elements ¡and ¡rela?ons ¡ – Suppor8ng ¡system ¡func8ons: ¡session ¡management, ¡ access ¡control ¡decisions ¡ – Review ¡func8ons: ¡query ¡opera?ons ¡on ¡RBAC ¡ elements ¡and ¡rela?ons ¡

  • Four ¡components: ¡Core ¡RBAC, ¡Hierarchical ¡RBAC, ¡

Sta?c ¡and ¡Dynamic ¡Separa?on ¡of ¡Duty ¡(SSD, ¡DSD) ¡

slide-12
SLIDE 12

Core ¡RBAC ¡

  • Same ¡as ¡RBAC0 ¡(users, ¡roles, ¡permissions, ¡sessions) ¡

– Object: ¡any ¡resource ¡ – Opera?on: ¡executable ¡image ¡of ¡a ¡program ¡ – Permission: ¡approval ¡to ¡perform ¡an ¡

  • pera/on ¡on ¡object(s) ¡

¡

  • Administra8ve ¡func8ons: ¡add/delete ¡users ¡and ¡roles, ¡create/delete ¡user-­‑

to-­‑role ¡and ¡permission-­‑to-­‑role ¡assignments ¡

  • Suppor8ng ¡system ¡func8ons: ¡session ¡ß ¡create, ¡add/delete ¡role, ¡check ¡

permission ¡

  • Review ¡func8ons: ¡enable ¡admin. ¡to ¡view ¡en?re ¡model ¡
slide-13
SLIDE 13

Hierarchical ¡RBAC ¡

  • Similar ¡to ¡RBAC1 ¡
  • r1 ¡is ¡a ¡descendant ¡of ¡r2 ¡if: ¡

– r1 ¡includes ¡all ¡permissions ¡from ¡r2 ¡ – All ¡users ¡assigned ¡to ¡r1 ¡are ¡also ¡assigned ¡to ¡r2 ¡

  • General ¡role ¡hierarchies ¡

– Arbitrary ¡par?al ¡order, ¡mul?ple ¡inheritance ¡

  • Limited ¡role ¡hierarchies ¡

– Tree ¡structure, ¡single ¡descendant ¡allowed ¡

¡

  • Administra8ve ¡func8ons: ¡add/delete ¡immediate ¡inheritance ¡rela?onship, ¡

create ¡new ¡role ¡and ¡add ¡it ¡as ¡ascendant ¡or ¡descendant ¡

  • Review ¡func8ons: ¡enable ¡admin. ¡to ¡view ¡users/permissions ¡directly ¡or ¡by ¡
  • inheritance. ¡
slide-14
SLIDE 14

Sta?c ¡Separa?on ¡of ¡Duty ¡(SSD) ¡

  • Prevents ¡conflict ¡of ¡interest ¡
  • Cardinality ¡constraint ¡on ¡a ¡set ¡of ¡roles ¡

– SSD ¡:= ¡(role ¡set, ¡n) ¡where ¡no ¡user ¡is ¡assigned ¡to ¡n ¡

  • r ¡more ¡roles ¡from ¡the ¡role ¡set ¡
  • Mutual ¡exclusive ¡roles ¡as ¡a ¡special ¡case: ¡

– SSD ¡:= ¡({r1, ¡r2}, ¡2) ¡

¡

  • Administra8ve ¡func8ons: ¡create/delete ¡role ¡sets, ¡add/delete ¡role ¡

members ¡

  • Review ¡func8ons: ¡view ¡proper?es ¡of ¡SSD ¡sets ¡
slide-15
SLIDE 15

Dynamic ¡Separa?on ¡of ¡Duty ¡(DSD) ¡

  • Similar ¡to ¡SSD, ¡but ¡ac?vated ¡within ¡sessions ¡
  • Typically ¡for ¡temporal ¡conflicts ¡of ¡interest ¡
  • Defini?on ¡

– DSD ¡:= ¡(role ¡set, ¡n) ¡(n≥2) ¡no ¡user ¡session ¡may ¡ ac?vate ¡≥n ¡roles ¡from ¡role ¡set ¡

  • Example: ¡Author ¡and ¡PC ¡member ¡(conference) ¡
  • Administra?ve ¡and ¡review ¡func?ons: ¡similar ¡to ¡SSD ¡
slide-16
SLIDE 16

Unspecified ¡by ¡NIST ¡RBAC ¡

  • Scalability ¡
  • Authen?ca?on ¡
  • Nega?ve ¡permissions ¡
  • Nature ¡of ¡permissions ¡
  • Discre?onary ¡role ¡ac?va?on ¡
  • Role ¡engineering ¡
  • Constraints ¡
  • RBAC ¡administra?on ¡
  • Role ¡revoca?on ¡
slide-17
SLIDE 17

NIST ¡Model ¡Revisited ¡

slide-18
SLIDE 18

Role ¡Engineering ¡(RE) ¡

  • Defini?on ¡of ¡roles ¡can ¡be ¡difficult; ¡essen?ally ¡a ¡

requirements ¡engineering ¡process ¡

  • RE ¡is ¡required ¡to ¡implement ¡an ¡abstract ¡model ¡
  • Basic ¡process ¡[C96] ¡
  • Role ¡predic?on ¡[Z+11] ¡

– Use ¡sta?s?cal ¡models ¡to ¡analyze ¡audit ¡logs ¡ – Predict ¡roles, ¡detect ¡anomalies ¡ – Refine ¡roles ¡(generalize ¡or ¡split) ¡

collect ¡ ac?vi?es ¡ group ¡into ¡ clusters ¡ name ¡ clusters ¡ describe ¡ remove ¡ duplicates ¡ iden?fy ¡minimal ¡set ¡

  • f ¡permissions ¡

simulate ¡ ac?vi?es ¡ role ¡ candidates ¡

slide-19
SLIDE 19

Case ¡Study: ¡RBAC ¡for ¡a ¡Bank ¡[SMJ01] ¡

  • Prior ¡to ¡1990 ¡used ¡local ¡access ¡control ¡files ¡

– manually ¡administered ¡for ¡each ¡user, ¡applica?on, ¡ and ¡host ¡à ¡administra?ve ¡overhead, ¡error-­‑prone ¡

  • Implemented ¡RBAC ¡scheme ¡(Authoriza?on) ¡
  • Applica?ons ¡no ¡longer ¡make ¡AC ¡decisions; ¡

query ¡Authoriza?on ¡for ¡a ¡security ¡profile ¡ instead ¡

  • Role ¡:= ¡(official ¡posi?on, ¡job ¡func?on) ¡

– (different ¡from ¡NIST ¡RBAC) ¡

slide-20
SLIDE 20
slide-21
SLIDE 21

Architecture ¡

Authoriza8on ¡

slide-22
SLIDE 22

Role ¡Administra?on ¡

slide-23
SLIDE 23

Numbers ¡

  • 65 ¡official ¡posi?ons, ¡368 ¡job ¡func?ons ¡
  • 50,659 ¡employees ¡
  • 1300 ¡roles ¡(poten?ally ¡23,920) ¡

– Agrees ¡with ¡es?mate ¡– ¡#roles ¡is ¡3-­‑4% ¡of ¡#users ¡

  • 42,000 ¡security ¡profiles ¡distributed ¡daily ¡
slide-24
SLIDE 24

Key ¡Points ¡

  • Roles ¡are ¡collec?ons ¡of ¡permissions, ¡users, ¡

and ¡possibly ¡other ¡roles ¡(many-­‑to-­‑many) ¡

  • Role ¡hierarchies ¡simplify ¡RBAC ¡management ¡

and ¡can ¡be ¡derived ¡from ¡org ¡structure ¡

  • Constraints ¡prevent ¡conflict ¡of ¡interest ¡
  • RBAC ¡implementa?ons ¡simplify ¡access ¡control ¡

but ¡may ¡require ¡role ¡engineering ¡

slide-25
SLIDE 25

References ¡

  • [SCFY96] ¡Sandhu, ¡R., ¡et ¡al. ¡“Role-­‑Based ¡Access ¡Control ¡Models.” ¡Computer, ¡
  • 1994. ¡
  • [S96] ¡Sandhu, ¡R. ¡Roles ¡versus ¡groups. ¡In ¡Proceedings ¡of ¡the ¡first ¡ACM ¡

Workshop ¡on ¡Role-­‑based ¡access ¡control ¡(RBAC ¡'95) ¡

  • [SFK00] ¡Sandhu, ¡R., ¡Ferraiolo, ¡D.F. ¡and ¡Kuhn, ¡D.R. ¡(July ¡2000). ¡

"The ¡NIST ¡Model ¡for ¡Role ¡Based ¡Access ¡Control: ¡Toward ¡a ¡Unified ¡Standard". ¡ 5th ¡ACM ¡Workshop ¡Role-­‑Based ¡Access ¡Control ¡(RBAC ¡‘00) ¡

  • [C96] ¡Coyne, ¡E. ¡Role ¡engineering. ¡In ¡Proceedings ¡of ¡the ¡first ¡ACM ¡Workshop ¡on ¡

Role-­‑based ¡access ¡control ¡(RBAC ¡'95) ¡

  • [Z+11] ¡Role ¡Predic?on ¡using ¡Electronic ¡Medical ¡Record ¡System ¡Audits ¡

Wen ¡Zhang, ¡Carl ¡A. ¡Gunter, ¡David ¡Liebovitz, ¡Jian ¡Tian, ¡and ¡Bradley ¡Malin ¡ AMIA ¡2011 ¡Annual ¡Symposium, ¡Washington, ¡DC, ¡October ¡2011 ¡

  • [SMJ01] ¡Andreas ¡Schaad, ¡Jonathan ¡Moffey, ¡and ¡Jeremy ¡Jacob. ¡2001. ¡

The ¡role-­‑based ¡access ¡control ¡system ¡of ¡a ¡European ¡bank: ¡a ¡case ¡study ¡and ¡

  • discussion. ¡In ¡Proceedings ¡of ¡the ¡sixth ¡ACM ¡symposium ¡on ¡Access ¡control ¡

models ¡and ¡technologies ¡(SACMAT ¡'01) ¡