Explain in detail the different types of access control models (DAC, MAC, RBAC, and ABAC) and how they relate to ACLs.

DAC (Discretionary Access Control) allows resource owners to grant or deny access based on their discretion. ACLs in DAC define permissions for specific users or groups.

MAC (Mandatory Access Control) enforces security policies by assigning sensitivity labels to resources and users. ACLs in MAC ensure that users can only access resources with matching labels.

RBAC (Role-Based Access Control) assigns permissions to roles, which are then assigned to users. ACLs in RBAC map roles to allowed actions on resources.

ABAC (Attribute-Based Access Control) uses attributes of subjects, objects, and environment to make access decisions. ACLs in ABAC express rules combining these attributes.