askvity

What is MAC and DAC?

Published in Access Control Models 3 mins read

MAC (Mandatory Access Control) and DAC (Discretionary Access Control) are two fundamental models for controlling access to resources within computer systems.

According to Permit.io's "MAC vs. DAC: Comparing Access Control Fundamentals," these models differ significantly in how access decisions are made and managed.

Understanding MAC (Mandatory Access Control)

MAC is a system-level access control model where access decisions are enforced by the operating system or security kernel based on system-wide security policies. Users cannot override these policies.

  • Definition: System-level control set by administrators or developers.
  • Control Level: Centralized.
  • Flexibility: Low.
  • Security Requirement: Confidentiality.

In MAC, every subject (like a user or process) and object (like a file or device) is assigned security attributes, such as sensitivity labels or security clearances. Access is granted only if the subject's attributes satisfy the rules defined by the security policy for the requested object's attributes. This strict, policy-based approach is often used in environments requiring high security and data isolation, such as government or military systems, where maintaining confidentiality is paramount.

Understanding DAC (Discretionary Access Control)

DAC is a user-level access control model where resource owners have the authority to determine who can access their resources and what permissions they have. Access is granted based on the user's identity.

  • Definition: User-level control over data and permissions.
  • Control Level: Decentralized.
  • Flexibility: High.
  • Security Requirement: User Agency.

In DAC, common examples include file permissions (read, write, execute) where the file owner can grant or deny access to other users or groups. This model is highly flexible because control is distributed among resource owners, allowing for fine-grained permissions. It prioritizes user agency, giving individuals control over the resources they own. Most common operating systems utilize a form of DAC.

Key Differences: MAC vs. DAC

The core distinctions between MAC and DAC, as highlighted by the provided reference, can be summarized:

Aspect Mandatory Access Control (MAC) Discretionary Access Control (DAC)
Definition System-level control User-level control
Control Level Centralized Decentralized
Flexibility Low High
Security Req. Confidentiality User Agency
  • Centralized vs. Decentralized Control: MAC centralizes control with administrators defining policies, while DAC decentralizes control, allowing individual users/owners to manage permissions.
  • Low vs. High Flexibility: MAC is less flexible due to its strict, system-wide policies, whereas DAC offers high flexibility as owners can easily change permissions.
  • Confidentiality vs. User Agency: MAC is typically focused on enforcing strict confidentiality rules to prevent unauthorized information flow. DAC prioritizes user's ability to manage access to their own resources.

Both models serve different security needs and are often implemented depending on the specific security requirements and environment.

(Information derived from MAC vs. DAC)

Related Articles