NYCU-LYX

4-Access Control

https://www.youtube.com/watch?v=t0m6aCQPTMs&t=5shttps://www.youtube.com/watch?v=4-tKLcGGdBY&t=12s

#

4.1  Access Control

Definition of Computer Security (RFC 4949)

Access control: the central element of computer security

1. NISTIR 7298 (Glossary of Key Information Security Terms, May 2013), defines
access control as the process of granting or denying specific requests to: (1)
obtain and use information and related information processing services; and
(2) enter specific physical facilities.
2. RFC 4949, Internet Security Glossary, defines access control as a process by
which use of system resources is regulated according to a security policy and
is permitted only by authorized entities (users, programs, processes, or other
systems) according to that policy

Access Control Principle

Access Control Context

Access Control Policies

ABAC模型的主要組成部分是:

4.2  Subjects, Objects, and Access Rights

basic elements of access control are: subject, object, and access right.

4.3  Discretionary Access Control (DAC)

Another Approach: Authorization Table [SAND94]

An Access Control Model

define the protection state of a system to be the set of information, at a given point in time, that specifies the access rights for each subject with respect to each object.

(定義系統的 Protection State 為在特定時間點指定每個主體對每個對象的訪問權限的信息集)

Access Control Model 解決以下三個需求,提供DAC系統的通用邏輯描述。

Extended Access Control Matrix

Access Control Function

Protection Domains (flexible approach)

Do the processes really need all the access rights? (process真的需要所有訪問權限嗎?)

4.4  Example: Unix File Access Control

UNIX files are administered using inodes (index nodes)

Directories are structured in a hierarchical tree

• May contain files and/or other directories

• Simply a file: contains file names plus pointers to associated inodes

Traditional UNIX File Access Control

Note:
A final point to note is that the traditional UNIX file access control scheme implements a simple protection domain structure. A domain is associated with the user, and switching the domain corresponds to changing the user ID temporarily. 最後需要注意的一點是,傳統的 UNIX 文件訪問控制方案實現了一個簡單的保護域結構。域與用戶相關聯,切換域等於臨時更改用戶 ID。

Access Control Lists in UNIX (Modern Unix)

Traditional ACLs V.S. Modern ACLs

Traditional ACLs

Modern ACLs

Here is a table that summarizes the key differences:

Feature Traditional ACL Modern ACL
Access permissions Owner, group, other owner, named users, (owning or named) groups, others
Protection bits 12 16
Hierarchy Yes No
Flexibility Less More

傳統 ACL 可以通過管理員為個別用戶和組以及所有者和組類別定義訪問許可權,但方式與擴展 ACL 不同。

傳統 ACL 使用 12 位保護位來定義訪問許可權。其中,9 位用於定義所有者、組和其他用戶的讀取、寫入和執行許可權。這 9 位保護位形成一個層次結構,以所有者、組和所有其他人的順序進行優先處理。

因此,在傳統 ACL 中,Owner和 group class的許可權總是優先於其他用戶的許可權。例如,如果所有者擁有讀取和寫入許可權,而組擁有讀取許可權,則所有用戶都將具有讀取許可權,但只有所有者和組中的用戶將具有寫入許可權。

擴展 ACL 則不同。它使用 16 位保護位來定義訪問許可權。其中,12 位用於定義個別用戶和組的讀取、寫入和執行許可權。這 12 位保護位是獨立的,沒有層次結構。

因此,在擴展 ACL 中,個別用戶和組的許可權可以覆蓋所有者和組類別的許可權。例如,如果所有者擁有讀取和寫入許可權,而組擁有讀取許可權,則管理員可以使用擴展 ACL 授予特定用戶對文件的執行許可權,即使該用戶不屬於所有者組。

總而言之,傳統 ACL 和擴展 ACL 都可以用於定義訪問許可權。傳統 ACL 更簡單,但靈活性較低。擴展 ACL 更複雜,但靈活性更高。

4.5  Role-Based Access Control

RBAC Reference Models

Models Hierarchies Constraints
RBAC 0 No No
RBAC 1 Yes No
RBAC 2 No Yes
RBAC 3 Yes Yes

Base Model — RBAC0\

Role Hierarchies — RBAC1

Constraints — RBAC2

###

4.6  Attribute-Based Access Control

Attributes

ABAC Model: Distinguishable

ABAC Logical Architecture

object proceeds according to the following steps:

  1. A subject requests access to an object. This request is routed to an access control mechanism.
  2. The access control mechanism is governed by a set of rules (2a) that are defined by a preconfigured access control policy. Based on these rules, the access control mechanism assesses the attributes of the subject (2b), object (2c), and current environmental conditions (2d) to determine authorization. (按照Attribute判斷是否授權)
  3. The access control mechanism grants the subject access to the object if access is authorized, and denies access if it is not authorized. (提權或拒絕)

ABAC Policies

ACL Trust Chain

ABAC Trust Chain

4.7  Identity, Credential, and Access Management

Teacher doesn’t teach this section

Identity Management

Credential Management

Access Management

Identity Federation

4.8  Trust Frameworks

Teacher doesn’t teach this section

Traditional Identity Exchange Approach

Open Identity Trust Framework

4.9  Case Study: RBAC System for a Bank

Role A: Financial analyst/Clerk

Role B: Financial analyst/Group manager

Access Control Administration

###

4.10  Key Terms, Review Questions, and Problems

4.1 What is the difference between authentication and authorization?

Authentication is the process of verifying the identity of a user. Authorization is the process of determining whether an authenticated user has permission to access a particular resource.

4.2 How does RBAC relate to DAC and MAC?

RBAC, or Role-Based Access Control, is a type of access control that assigns permissions to users based on their roles within an organization. DAC, or Discretionary Access Control, is a type of access control that allows users to control who has access to their own resources. MAC, or Mandatory Access Control, is a type of access control that is imposed by the system and cannot be overridden by users.

RBAC is a more flexible and expressive type of access control than DAC or MAC. It allows organizations to define complex roles and permissions based on the needs of their business. RBAC can also be used to implement DAC and MAC policies.

4.3 List and define the three classes of subject in an access control system.

The three classes of subject in an access control system are:

4.4 List and briefly explain the three basic elements of access control.

The three basic elements of access control are:

4.5 What is ABAC?

ABAC, or Attribute-Based Access Control, is a type of access control that bases access decisions on the attributes of the subject, resource, and environment. ABAC is more flexible and expressive than RBAC, but it can also be more complex to implement and manage.

4.6 What is the difference between an access control list and a capability ticket?

An access control list (ACL) is a list of permissions associated with a resource. A capability ticket is a token that grants a subject permission to perform a specific operation on a specific resource.

ACLs are typically used to implement DAC policies, while capability tickets are typically used to implement MAC policies.

4.7 List some of the main types of access control.

The main types of access control are:

4.8 Briefly define the four RBAC models of Figure 4.8a.

The four RBAC models of Figure 4.8a are:

4.9 What is meant by mutually exclusive roles in the RBAC3 model?

Mutually exclusive roles in the RBAC3 model are roles that a user can only be assigned to one of at a time. This type of constraint can be used to prevent users from having conflicting permissions.

4.10 Describe three types of role hierarchy constraints.

The three types of role hierarchy constraints are:

4.11 In the NIST RBAC model, what is the difference between SSD and DSD?

SSD, or Static Separation of Duty, is a type of constraint that prevents users from being assigned to roles that have conflicting permissions. DSD, or Dynamic Separation of Duty, is a type of constraint that prevents users from activating roles that have conflicting permissions at runtime.