Mandatory Access Control (MAC)
Mandatory access control is a kernel-enforced security model where system policy, not individual users, determines permitted actions between subjects (processes/users) and objects (files/resources).
Overview
Mandatory access control (MAC) is a system-level access control strategy used in computer security to enforce organization-wide rules about who or what can access resources. Unlike discretionary models that allow resource owners to set permissions, MAC assigns labels and policies centrally and requires the operating system kernel to mediate every access decision. For a broad introduction to the field, see computer security resources.
How MAC works
In MAC, both subjects (users, processes) and objects (files, devices, sockets) carry security attributes such as sensitivity labels or integrity levels. When a subject attempts an operation on an object, the kernel evaluates the request against the active policy and labels to permit or deny the action. Enforcement is automatic and cannot be overridden by ordinary user-level processes. For more on access control mechanisms, consult access-control literature.
Key characteristics
- Centralized policy: Administrators define rules that apply to all system actors.
- Labeling: Objects and subjects are tagged with classifications (e.g., secret, top secret, unclassified).
- Kernel mediation: Decisions are enforced by the operating system kernel to prevent circumvention.
- Non-discretionary: Individual users cannot grant access rights beyond what policy allows.
History and models
MAC concepts have roots in military and government requirements for data confidentiality and integrity. Classic formal models include Bell–LaPadula (confidentiality-focused) and Biba (integrity-focused), and lattice-based models that generalize label comparisons. Over time these formal ideas influenced practical implementations in operating systems and secure computing projects. For historical and technical context, see materials on operating system security and kernel enforcement at relevant OS security references.
Uses, implementations and examples
MAC is commonly used where strict control over information flow is required: government and defense systems, multi-tenant servers, and critical infrastructure. Notable implementations include SELinux and AppArmor on Linux, TrustedBSD extensions on FreeBSD, and Windows' Mandatory Integrity Control. Typical deployment scenarios involve labeling network data, isolating services, and preventing privilege escalation. Examples of practical effects are preventing a compromised web server process from reading confidential files or writing to other services.
Advantages, limitations and comparison
- Advantages: Strong, consistent enforcement reduces human error and insider misuse.
- Limitations: Policies can be complex to design and manage; may impede usability if too restrictive.
- Comparison with DAC: Discretionary access control (DAC) gives owners control over permissions, while MAC removes that discretion to ensure system-wide policy adherence.
For deployment guidance, best practices and case studies, further reading is available at general security guides and implementation-specific documentation such as vendor and project pages.
Author
AlegsaOnline.com Mandatory Access Control (MAC) Leandro Alegsa
URL: https://en.alegsaonline.com/art/61236