CSCE 790 Computer Systems Security Access Control Professor Qiang - - PowerPoint PPT Presentation

csce 790 computer systems security access control
SMART_READER_LITE
LIVE PREVIEW

CSCE 790 Computer Systems Security Access Control Professor Qiang - - PowerPoint PPT Presentation

CSCE 790 Computer Systems Security Access Control Professor Qiang Zeng Spring 2020 Previous Class Biometrics Measurement and applications of human characteristics Applications Advantages and Disadvantages False


slide-1
SLIDE 1

CSCE 790
 Computer Systems Security


Access Control

Professor Qiang Zeng Spring 2020

slide-2
SLIDE 2

Previous Class

  • Biometrics

– Measurement and applications of human characteristics

  • Applications
  • Advantages and Disadvantages
  • False rejection rate; false acceptance rate
  • Case Studies

– Fingerprint – Iris

CSCE 790 – Computer Systems Security 2

slide-3
SLIDE 3

CSCE 790 – Computer Systems Security 3

slide-4
SLIDE 4

Outline

  • Concepts of Access Control
  • Access Matrix, Access Control List, Capabilities
  • Main Types of Access Control Policies

– DAC: Discretionary Access Control – MAC: Mandatory Access Control – RBAC: Role-based Access Control

CSCE 790 – Computer Systems Security 4

slide-5
SLIDE 5

Access Control

  • Access Control: the process of restricting access

to resources according to a security policy

– A security policy regulates who can do what – Access control implements a security policy

  • Authorization: the action of granting access
  • Access Control usually starts from Authentication

(i.e., verifying the identity of a user)

CSCE 790 – Computer Systems Security 5

slide-6
SLIDE 6

Examples of Access Control

  • The University’s Blackboard system
  • Operating Systems
  • Database systems
  • Governments
  • Intelligence Departments

CSCE 790 – Computer Systems Security 6

slide-7
SLIDE 7

Question

CSCE 790 – Computer Systems Security 7

Consider “Entering a university building” as an example, point out “Policy”, “Access Control”, “Authentication”, “Authorization” Policy: only university students, faculty and employees or verified visitors are allowed to enter the building Access Control: the process of restricting people who can enter the building Authentication: verifying the identity of a person Authorization: allowing a person to enter the building

slide-8
SLIDE 8

Concepts

  • Subjects: entities to access resources

– Users, processes, threads

  • Objects: resources whose access is controlled

– Files, database relations (tables), memory

  • Access Rights: actions that are taken

– Read, Write, Execute, Delete, Create, Search

CSCE 790 – Computer Systems Security 8

slide-9
SLIDE 9

Goals of Access Control

  • Confidentiality (Secrecy)
  • Integrity

CSCE 790 – Computer Systems Security 9

slide-10
SLIDE 10

Question

CSCE 790 – Computer Systems Security 10

To achieve confidentiality, is it sufficient by correctly restricting the read operation only?

It is insufficient. A malicious or buggy subject (e.g., a process) may read information from a sensitive file and then write to a file accessible by public Sensitive Object -> Subject -> Non-sensitive object -> Public Therefore, the access control has to regulate not only read but also write

slide-11
SLIDE 11

Access (Control) Matrix

  • An Access Matrix describes the rights of each

subject with regard to each object in an Access Control system at some point of time

  • But it does NOT model the rules by which rights

are changed; thus, it is not equal with the access control policy

CSCE 790 – Computer Systems Security 11

slide-12
SLIDE 12

Access Matrix

CSCE 790 – Computer Systems Security 12

Disadvantage: it does not scale well

slide-13
SLIDE 13

Three Ways to Express the Access Matrix

  • One Access Tuple per cell:

– <subject, object, rights> – E.g., <Bob, File2, read/write>

  • One Access Control List per object (column)
  • One Capability List per subject (row)

CSCE 790 – Computer Systems Security 13

slide-14
SLIDE 14

Access Control Lists

  • An ACL is a list of

subjects and their rights to an object

  • One ACL per object
  • It is difficult to find out

all files accessible by a given user

  • Widely used in Unix/

Linux/Windows

CSCE 790 – Computer Systems Security 14

slide-15
SLIDE 15

Access Control Lists in Unix

CSCE 790 – Computer Systems Security 15

slide-16
SLIDE 16

Capability Lists

  • A Capability List is

the list of objects accessible by a subject and the corresponding rights

CSCE 790 – Computer Systems Security 16

slide-17
SLIDE 17

Capability in real-world

  • int fd = open("/etc/passwd", O_RDWR);
  • fd is an index into the process’s file descriptor

table, which can be regarded as a runtime capability list

  • Each file descriptor is a capability

– For all subsequent read/write/seek operations, one critical parameter being passed is “fd”

  • It is unforgeable by a user program, as the file

descriptor table is allocated and maintained in the kernel space

CSCE 790 – Computer Systems Security 17

slide-18
SLIDE 18

Types of Access Control Policies

  • Discretionary Access Control (DAC)
  • Mandatory Access Control (MAC)
  • Role-Based Access Control (RBAC)

CSCE 790 – Computer Systems Security 18

slide-19
SLIDE 19

Discretionary Access Control (DAC)

  • DAC means subjects themselves can grant

rights to other subjects

– E.g., in Unix/Linux, the owner of a file can set up and change the ACL of the file

  • Convenient but cannot achieve the goals of

confidentiality and integrity

– Subjects make decisions about access permissions; the decisions may be bad decisions

CSCE 790 – Computer Systems Security 19

slide-20
SLIDE 20

Question

CSCE 790 – Computer Systems Security 20

There are two ACLs defined in a DAC system, File 1: <Alice: write, Bob: read>, File 2: <Bob: write, Charlie: read>. The confidentiality goal is that “Alice does not leak info to Charlie”. Can this goal be achieved here?

  • No. Alice -> File1 -> Bob -> File2 -> Charilie
slide-21
SLIDE 21

MAC

  • A mandatory access control (MAC) policy is a

means of assigning access rights based on regulations by a central authority

  • The underlying philosophy the information in a

file belongs to the organization rather than the file owner. So it should be the organization who assigns access rights and regulates the information flow

CSCE 790 – Computer Systems Security 21

slide-22
SLIDE 22

A Simple Example of MAC

  • In Military department, there are four levels of

clearance

– Unclassified – Confidential – Secret – Top Secret

  • Assume you, as an employee, created a file

labeled as <“Secret”, Nuclear>

– You are not allowed to decide who can access the file – People who have the “Secret” or “Top Secret” clearance and the Nuclear duty can access the file

CSCE 790 – Computer Systems Security 22

slide-23
SLIDE 23

Role Based Access Control (RBAC)

  • In the real world, especially in enterprises, the

responsibilities of a person change dynamically

– In a large company, every day many people change their jobs – Is there a convenient way to access control?

  • Role Based Access Control assign access rights

to roles rather than subjects

  • A role is a job function or title and can be

translated to rights in a RBAC system

CSCE 790 – Computer Systems Security 23

slide-24
SLIDE 24

The Principle of Least Privilege

  • A user can be assigned with multiple roles
  • But when a user logs in, she can only activate
  • ne role
  • This complies with the Principle of Least
  • Privilege. That is, one is granted rights just

needed to finish the intended task

CSCE 790 – Computer Systems Security 24

slide-25
SLIDE 25

CSCE 790 – Computer Systems Security 25

Role 1 Users Roles

Figure 4.6 Users, Roles, and Resources

Resources Role 2 Role 3

slide-26
SLIDE 26

Role vs. Group

  • A role is a job title, while a group is a set of users
  • A user can have at most one active role at any

given time, but can belong to many groups at any time

CSCE 790 – Computer Systems Security 26

slide-27
SLIDE 27

Summary

  • Concepts

– Access Control – Subject, Object

  • Goals of Access Control

– Confidentiality – Integrity

  • Access Matrix

– View of Columns: Access Control Lists – View of Rows: Capability Lists

  • Types of Access Control Policies

– DAC – MAC – RBAC

CSCE 790 – Computer Systems Security 27

slide-28
SLIDE 28

Writing Assignments

  • In which scenarios DAC, MAC and RBAC should

be used, respectively?

  • Does RBAC belong to DAC or MAC?

CSCE 790 – Computer Systems Security 28