What is the Difference Between Discretionary and Mandatory access control

Access control is one of the most important cybersecurity practices. Careful adjustment of users’ access rights helps to secure sensitive data and reduces the chance of a successful attack.

However, choosing an access control model relevant to your organization can be tricky. In one of our previous posts, we reviewed role-based and attribute-based access control models. This article discusses use cases for mandatory and discretionary access control models. We also compare two approaches — discretionary vs mandatory access control (DAC vs MAC) — to help you choose one over the other. Finally, we provide implementation tips.

Why is access control important?

Access control regulates which users, applications, and devices can view, edit, add, and delete resources in an organization’s environment. Controlling access is one of the key practices to protect sensitive data from theft, misuse, abuse, and other threats. There are two levels of access control: physical and logical.

What is the Difference Between Discretionary and Mandatory access control

Access control helps mitigate both insider and outsider threats. That’s why IT regulations, laws, and standards — NIST, HIPAA, PCI DSS, and others — enforce strict physical and logical access control measures. In this article, we discuss models of logical access control.

There are several logical access control models, including mandatory, discretionary, role-based, and attribute-based. The process of choosing and deploying one of these models looks different for each organization. The choice of model depends on:

  • The nature of the protected data
  • IT requirements and industry standards
  • The number of employees
  • The cybersecurity budget

Let’s find out when to use mandatory and discretionary access control models.

Learn more about using Ekran System forPrivileged Access Management

What is the Difference Between Discretionary and Mandatory access control

What is mandatory access control?

Mandatory access control (MAC) is a model of access control where the operating system provides users with access based on data confidentiality and user clearance levels. In this model, access is granted on a need to know basis: users have to prove a need for information before gaining access. 

MAC is also called a non-discretionary control model, which means that control isn’t gained at the discretion of the user or file owner. MAC implements zero-trust principles with its control mechanisms. 

MAC is considered the most secure of all access control models. Access rules in this model are manually defined by system administrators and strictly enforced by the operating system or security kernel. Regular users can’t alter security attributes even for data they’ve created.

What are the basic principles of MAC?

1. The utmost privacy and confidentiality of the organization’s resources are paramount. No one has default privileges to access or edit someone’s data.

2. Access provisioning is centrally administered.

3. Each individual and resource in the system has security labels with their classification and category.

What is the Difference Between Discretionary and Mandatory access control

With MAC, the process of gaining access looks like this:

  • The administrator configures access policies and defines security attributes: confidentiality levels, clearances for accessing different projects and types of resources. 
  • The administrator assigns each subject (user or resource that accesses data) and object (file, database, port, etc.) a set of attributes.
  • When a subject attempts to access an object, the operating system examines the subject’s security attributes and decides whether access can be granted.
  • To obtain access to the object, the user provides their credentials.

In addition to checking confidentiality and clearance levels (classification matches between subject and object), operating systems pay attention to category matches between subject and object. Having a “top secret” classification doesn’t automatically provide a user with full access to a file if they aren’t a member of the required category for the object.

For example, let’s consider data that has the “top secret” confidentiality level and “engineering project” security label. It’s available to a set of users that have both “top secret” clearance (classification) and authorization to access engineering documents (category). Such users can also access information that requires a lower level of clearance. But employees with lower levels of clearance or no rights to access engineering documents can’t access such information.

MAC brings lots of benefits to a cybersecurity system. But it has several disadvantages to consider. Let’s observe the disadvantages and advantages of mandatory access control.

Pros and cons of MAC

What is the Difference Between Discretionary and Mandatory access control

Pros

  • High level of data protection — An administrator defines access to objects, and users can’t alter that access.
  • Granularity — An administrator sets user access rights and object access parameters manually.
  • Immunity to Trojan Horse attacks  — Users can’t declassify data or share access to classified data.
  • Fewer errors  — Strict and constantly controlled policies help reduce system errors that lead to over-privileged users.
  • Strict division  — Admins divide users into subsets and limit resource exposure for these subsets using security attributes.

What is the Difference Between Discretionary and Mandatory access control

Cons

  • Maintainability — Manual configuration of security levels and clearances requires constant attention from administrators.
  • Scalability — MAC doesn’t scale automatically. New users and pieces of data demand constant updates in objects and account configurations.
  • Interference with users' work — Users have to request access to each new piece of data; they can’t configure access parameters for their own data.

When to use MAC

This access control model is mostly used by government organizations, militaries, and law enforcement institutions. MAC is used by the US government to secure classified information and to support multilevel security policies and applications. For better data protection and compliance in the insurance industry and the banking sphere, organizations use MAC to control access to customer account data. This non-discretionary access control model can also protect access to a database, where procedures, tables, views, and other elements will be the objects.

It’s reasonable to use MAC in organizations that value data security more than operational flexibility and costs. Implementing MAC in a private organization is rare because of the complexity and inflexibility of such a system. 

A pure MAC model provides a high and granular level of security. On the other hand, it’s difficult to set up and maintain. That’s why it’s common to combine MAC with other access control models.

For example, combining it with the role-based model speeds up the configuration of user profiles. Instead of defining access rights for each user, an administrator can create user roles. Each organization has users with similar roles and access rights: employees with the same job position, third-party vendors, etc. An administrator can configure roles for these groups instead of configuring individual user profiles from scratch. 

Another popular combination is MAC and the discretionary access control model, or DAC. MAC can be used to secure sensitive data, while DAC allows coworkers to share information within a corporate file system.

Read also: Key Features of an Insider Threat Protection Program for the Military

What is the Difference Between Discretionary and Mandatory access control

What is discretionary access control?

Discretionary access control is an identity-based access control model that provides users with a certain amount of control over their data. Data owners (document creators or any users authorized to control data) can define access permissions for specific users or groups of users. In other words, whom to give access to and what privileges to grant are decided at the resource owner’s discretion.

Access permissions for each piece of data are stored in an access control list (ACL). An administrator creates this list when a user grants access to somebody. The list can be generated automatically. An ACL includes users and groups that may access data and the levels of access they have. A system administrator can also enforce an ACL. In this case, the ACL acts as a security policy, and regular users can’t edit or overrule it.

What are the basic principles of DAC?

1. Object characteristics (size, name, directory path) are invisible to users that aren’t authorized.

2. Several failed access attempts enforce additional multi-factor authentication or deny access.

3. Users can transfer their object ownership to other users. Also, the owner determines the access type of other users. Based on these access privileges, the operating system decides whether to grant access to a file.

What is the Difference Between Discretionary and Mandatory access control

Gaining access to a file in the DAC model works like this:

  • User 1 creates a file and becomes its owner, or obtains access rights to an existing file.
  • User 2 requests access to this file. They provide their credentials: username, password, or something else.
  • User 1 grants access at their discretion. However, user 1 can’t grant access rights that exceed their own. For example, if user 1 can only read a document, they can’t allow user 2 to edit it.
  • If there’s no contradiction between the ACL created by an administrator and the decision made by user 1, access is granted.

Discretionary access control is quite a popular model because it allows a lot of freedom for users and doesn’t cause administrative overhead. However, it has several considerable limitations.

Pros and cons of DAC

What is the Difference Between Discretionary and Mandatory access control

Pros

  • User-friendly — Users can manage their data and quickly access data of other users.
  • Flexible — Users can configure data access parameters without administrators.
  • Easy to maintain — Adding new objects and users doesn’t take much time for the administrator.
  • Granular — Users can configure access parameters for each piece of data.

What is the Difference Between Discretionary and Mandatory access control

Cons

  • Low level of data protection — DAC can’t ensure reliable security because users can share their data however they like.
  • Obscure access management — There’s no centralized access management, so in order to find out access parameters, you have to check each ACL. 
  • Overlay of user privileges— A permissions conflict may happen with users of multiple nested workgroups. 

When to use DAC

DAC shouldn’t be used by organizations that work with extremely sensitive data (medical, financial, military, etc.) for several reasons:

  • If user 1 shares access rights with user 2, there’s no guarantee that user 2 needs this access to work, won’t steal or corrupt data, and won’t grant access to a malicious user.
  • It’s impossible to control information flows inside the network.
  • It’s impossible to enforce the principles of least privilege, need to know, and separation of duties.

At the same time, DAC is a good choice for small businesses with limited IT staff and cybersecurity budgets. It allows for sharing information and ensures the smooth operation of the business. This approach, when applied in an organization with 10 to 20 employees, lacks the complexity and oversight challenges associated with the use of DAC in organizations with hundreds or thousands of employees.

MAC vs DAC Comparison

Let’s review the key characteristics of these two models — mandatory access control vs discretionary access control — and see what the differences are between MAC and DAC.

Characteristic MAC DAC
Access control enforced by

Administrators and operating system

Administrators and users

Form of access control policy

Confidentiality levels and clearances

Access-control lists with user identities

Flexibility
What is the Difference Between Discretionary and Mandatory access control
What is the Difference Between Discretionary and Mandatory access control
Scalability
What is the Difference Between Discretionary and Mandatory access control
What is the Difference Between Discretionary and Mandatory access control
Simplicity
What is the Difference Between Discretionary and Mandatory access control
What is the Difference Between Discretionary and Mandatory access control
Maintenance

Hard

Easy

Implementation cost

High

Low

Granularity

High (admins adjust clearances for each user and object manually)

High (users can assign access rights for any other user or group)

Easy to use
What is the Difference Between Discretionary and Mandatory access control
What is the Difference Between Discretionary and Mandatory access control
Security level

High

Low

Useful for

Government, military, law enforcement

Small and medium-sized companies

Trusted users

Only administrators

All users

Baseline for gaining access decisions

Tasks and objects that have their own IDs

Ownership and users IDs

This DAC vs MAC comparison shows that they’re very different access control models, suitable for different kinds of organizations. DAC works well for organizations that require flexibility and user-friendly workflows. On the other hand, MAC is more suitable for organizations that work with highly sensitive data.

Read also: SSH Key Management

What is the Difference Between Discretionary and Mandatory access control

Implement robust and flexible access management with Ekran System

There are many organizations that require elements of both discretionary access control and mandatory access control models. The flexibility, scalability, and simplicity of DAC are important for creating a simple and uninterrupted workflow. At the same time, organizations might need the high level of security and granularity offered by the MAC model.

Are these characteristics crucial for your organization? Ekran System’s access management functionality can help you get the best of MAC and DAC with an all-in-one platform. We offer a wide range of access control possibilities:

  • Identity management — Automated user authentication and authorization confirms identities to reduce the risks of unauthorized or malicious access.
  • Multi-factor authentication — Confirm users’ identities by double-checking them using various factors (knowledge, inheritance, possession) in order to stop intruders and provide an additional level of access control.
  • Secondary authentication — Confirm each user’s identity for shared accounts by requesting personal credentials.
  • Password and secrets management — Automated one-time passwords, credentials creation, and regular rotation simplify your administrator’s job, as there are fewer manual procedures. Moreover, it reduces the chance of user mistakes with no need to remember or write down passwords.
  • Privileged access management — Robust control over user privileges and monitoring of user sessions helps you secure manipulations with the most important data in your organization. 
  • Request approval workflow — A secure way to control all users’ access requests when the admin sees and controls all access attempts. 

Conclusion

Comparing MAC and DAC, we see that they’re two opposite models of access control. MAC is controlled by administrators and requires lots of time and effort to maintain, but it provides a high level of security. DAC is much easier to implement and maintain, as users can manage access to the data they own. However, DAC isn’t good enough for protecting sensitive records.

With Ekran System, you can combine the benefits of both of these access control models. Additionally, Ekran can enforce a role-based access control model, which strikes a balance between security and manageability.

Request pricing for Ekran System’s access management functionality to simplify and secure your access control.

What's the difference between discretionary and mandatory access control?

In mandatory access control (MAC), the system (and not the users) determines which subjects can access specific data objects. In discretionary access control (DAC), the owner of the object specifies which subjects can access the object.

What are the two types of access control?

There are two types of access control: physical and logical. Physical access control limits access to campuses, buildings, rooms and physical IT assets. Logical access control limits connections to computer networks, system files and data.

What is an example of discretionary access control?

A typical example of DAC is Unix file mode, which defines the read, write and execute permissions in each of the three bits for each user, group and others. DAC attributes include: User may transfer object ownership to another user(s). User may determine the access type of other users.

What are the 3 types of access control?

Three main types of access control systems are: Discretionary Access Control (DAC), Role Based Access Control (RBAC), and Mandatory Access Control (MAC). DAC is a type of access control system that assigns access rights based on rules specified by users.