8 Access Control
8 Access Control
SIO
André Zúquete
Access types
• Physical access
ꟷ Physical contact between a subject and the object of interest
• Facility, room, network, computer, storage device, authentication token, etc.
ꟷ Out of scope of this course …
• Definition log
• Normal requirements
ꟷ Authentication
• With some Level of Assurance (LoA)
ꟷ Authorization policies AAA
ꟷ Accountability → logging
João Paulo Barraca, André Zúquete SIO 3
Access control: Subjects and Objects
• Both are digital entities
• Subjects are something exhibiting activity:
ꟷ Processes
ꟷ Computers • Objects are targets of actions (resources):
ꟷ Network elements ꟷ Stored data
ꟷ CPU time
ꟷ Memory
ꟷ Processes
ꟷ Computers
ꟷ Networks
• An entity can be both subject & object
João Paulo Barraca, André Zúquete SIO 4
Least privilege principle
“Every program and every user of the system should operate using the least set of privileges necessary to
complete the job”
J. H. Saltzer, M. D. Schroeder, Proc. of The protection of information in computer systems, IEEE, 63(9) 1975
• Privilege:
ꟷ Authorization to perform a given task
ꟷ Similar to access control clearance
• Subjects should have, at any time, the exact privileges required to their assigned tasks
ꟷ Less privileges than the required create unsurpassable barriers
ꟷ More privileges than the required create vulnerabilities
• Damage resulting from accidents or errors
• Potential interactions among privileged programs
• Misuse of a privileges
• Unwanted information flows
• "need-to-know" military restrictions
• ACL-based mechanisms …
ꟷ ACL: Access Control List Sn-1
ꟷ Matrix column Sn
• Access granting
ꟷ Transmission of capabilities between subjects
ꟷ Mediated / non-mediated
• Transaction authorization:
ꟷ A subject can execute a transaction iff
• the transaction is authorized through the subject's role memberships
ꟷ and
• there are no other constraints that may be applied across subjects, roles, and
permissions
[3] 3 - Transaction
1 - Role authorization
assignment
2 - Role
authorization
[1] [2]
Transaction execution request
(on behalf of a given role)
• RBAC 0
ꟷ No role hierarchies RBAC 1 RBAC 2
ꟷ No role constraints
• RBAC 1 RBAC 0
ꟷ RBAC 0 w/ role hierarchies (privilege inheritance)
• RBAC 2
ꟷ RBAC 0 w/ role constraints (separation of duties)
• RBAC 3
ꟷ RBAC 1 + RBAC 2
• The PEP sends an authorization request to the Policy Decision Point (PDP)
ꟷ With some subject’s attributes
• The PDP evaluates the authorization request against its policies and reaches
a decision
ꟷ Which is returned to the PEP
• Damage control
ꟷ Segregation of duties helps reducing the potential damage from the actions of one
person
ꟷ Some duties should not be combined into one position
SL? SL?
data flow
src dst
C1
• Self-contained information environments Secret
ꟷ May span several security levels
C2
Confidential
• Military environments
ꟷ Military branches, military units
C3 Restricted
• Civil environments
Unclassified
ꟷ Departments, organizational units
U, all
João Paulo Barraca, André Zúquete SIO 27
Bell-La Padula MLS Model
D. Elliott Bell, Leonard J. La Padula, "Secure Computer Systems:
Mathematical Foundations”, MITRE Tech. Report 2547, Vol. I, 1973
• Access control policy for controlling information flows
ꟷ Addresses data confidentiality and access to classified information
ꟷ Addresses disclosure of classified information
• Object access control is not enough
• One needs to restrict the flow of information from a source to authorized destinations
O1
• Access control policy for enforcing integrity control over data flows
ꟷ Uses integrity levels, not security levels
ꟷ Similar to Bell-La Padula, with inverse rules O3
R
• Simple Integrity Property (no read down) R