P1L5 Flashcards
access control
who is allowed to access what
2 parts of access control
- decide who would have access
2. enforcement
Access control metric (ACM)
- abstract state: rows-users, column-resources
- ACM[U,O] defines what access right user U have on object O
confidentiality
- read related
integrity
- write related
discretionary access control (DAC)
access to a resource is at the discretion of its owner. Since a user can make a copy and share with the third person
ACL (access control list)
handle access to object Oi (column wise)
capability list (C-list)
- handle right of user Ui (row wise)
where are ACL and C-list
in the trusted part of the system
how do we perform access control check
transversal of ACL to see if an ACE (access control entry) exists.
a capability in C-list
- unforgeable reference/handle for a resource
- user catalog of capabilities define defines what a certain user can access.
hydra
store c-list in objs, resources themselves
how sharing happens?
create new ACE, and add access right to that
most OS use ACL or C-list? why?
ACL, which is good for accountability and revocation. C-list is only good for efficiency
a movie ticket is a capability or access control entry?
capability (holder get access)
when does access check for ACE stop?
neg/deny found or transverse the whole list
how is access control implemented in unix
- each resource look like a file
- each file has an owner
- each file can possibly be accessed by owner, group or everyone
- permission r,w,x
- ACL implemented using bitmap, 9 bits
how does OS implement ACL?
- process call open file
- openfile table get i (index) from i-node table and return to the process
- ACL bit is stored at the same location on i-node table. This will grant access and point to the file data.
TOCTOU (time to check time to use) vulnerability
permission changed between checking and using
in unix, you can share the file by sharing the file descriptor
false
setuid bit set
the uid of the process will be the owner
roll-based access control (RBAC)
user -> roll -> rights
RBAC benefits
policy associates with roll (in case a user leave or new one comes in)
fail safe
deny when in doubt