AC-3: Access Enforcement

FieldValue
Control IDAC-03
Control NameAccess Enforcement
FrameworkNIST SP 800-53, Revision 5
Control FamilyAccess Control
BaselinesLOW MODERATE HIGH
Implementation LevelSystem
RelevanceFirst Party and Third Party
Risk SeverityCritical

What this control requires

AC-03 requires your systems to enforce approved access authorizations every time a user or process attempts to reach a resource. This requirement means the system itself, not a policy document or manual review, must decide in real time whether a given subject can read, write, or execute a given object.

In practice, this control sits at the enforcement layer of your NIST SP 800-53 access control stack. Account Management (AC-02) defines who gets access. Least Privilege (AC-06) defines how much. AC-03 is the mechanism that makes those decisions stick at the system, application, and service level. Without it, every other access control policy is aspirational.

But the scope extends beyond operating-system permissions. If your environment hosts multiple applications, each application must enforce its own authorization checks against the approved set of user privileges. A web application that trusts the network perimeter to keep unauthorized users out fails AC-03 the moment that perimeter is bypassed.

Why it matters

Most organizations treat access enforcement as a one-time configuration task. They set role-based permissions during deployment, then rarely revisit them. The result is privilege accumulation, orphaned accounts with live credentials, and service accounts with unrestricted reach across data stores that were never part of their original purpose.

Anthem Healthcare Breach (2015)

In February 2014, a system administrator at Anthem’s Amerigroup subsidiary opened a spear-phishing email containing a link to a domain mimicking an internal Anthem service. The domain used the numeral “1” in place of the letter “l.” That single interaction delivered the Sakula and Mivast malware strains, attributed to the Chinese APT group Deep Panda.

The result was a slow, invisible expansion. Over the following 10 months, the attackers compromised at least 50 accounts and 90 systems across Anthem’s environment. On December 10, 2014, they used stolen credentials to issue bulk SQL queries against Anthem’s enterprise data warehouse, an unencrypted repository containing records for the company’s entire member base. The queries exfiltrated approximately 78.8 million records. A database administrator discovered the breach on January 27, 2015, when she noticed her credentials being used without her knowledge.

Where AC-03 failed was in the blast radius a single credential theft produced. The stolen administrator credentials carried no restriction that would have limited queries to the resources the role actually required. No multi-factor authentication protected privileged accounts. No anomaly detection flagged the volume of the queries. The October 2018 Department of Health and Human Services Office for Civil Rights (HHS OCR) resolution agreement, which resulted in a $16 million HIPAA fine, explicitly cited Anthem’s failure to “implement adequate minimum access controls to prevent the cyber-attackers from accessing sensitive electronic protected health information (ePHI).” Combined with state AG and class-action settlements, Anthem’s total regulatory and legal exposure exceeded $179 million.

What attackers exploit:

  • Overprivileged service and administrator accounts that can query entire data stores without restriction
  • Applications that inherit ambient credentials from the operating system rather than enforcing their own authorization layer
  • Stale role assignments that accumulate permissions over time without periodic review
  • Systems that rely on perimeter controls instead of enforcing access at the resource level
  • Absence of multi-factor authentication on accounts with broad data access

How to implement

The most common failure mode isn’t a missing access control list. It’s an access control list that was correct at deployment and has silently drifted for years as roles changed, applications were added, and exceptions became permanent.

For your organization

In practice, this effort starts with documenting your access control policy. This policy must define which subjects (users, processes, service accounts) can access which objects (files, databases, APIs, network segments) and under what conditions. Map these approved authorizations to the actual enforcement mechanisms in your environment.

In practice, this scope means deploying enforcement at every layer where access decisions occur. Operating-system permissions, database access controls, application-level role checks, and API gateway policies all fall within scope. A gap at any layer means the control is not fully implemented across the Access Control family.

Specifically, configure role-based access control (RBAC) or attribute-based access control (ABAC) aligned to job functions. Enforce the principle of least privilege so each account has only the permissions required for its current role. Restrict service accounts to specific operations on specific data sets.

The result is a documentation trail auditors can verify. You need current access control policy documentation, system configuration exports showing enforcement settings, a maintained list of approved user privileges mapped to roles, and audit logs showing access decisions (both granted and denied). Review these quarterly at minimum.

Where most implementations fall short is in scope creep. A common mistake is granting database administrators unrestricted query access across all schemas. Relying solely on network segmentation as an access enforcement mechanism is another frequent gap, as is failing to revoke temporary elevated privileges after the task that justified them is complete.

For your vendors

When assessing a vendor’s AC-03 posture, request their access control policy and ask how enforcement is implemented at the system, application, and database layers. Generic statements about “role-based access” without architectural specifics are a red flag.

In practice, the most revealing questions to ask during your assessment are:

  • How does your system enforce approved access authorizations at the application and database level?
  • What access control model do you use (RBAC, ABAC, mandatory access control), and how are roles mapped to job functions?
  • How do you prevent privilege accumulation for long-tenured employees or service accounts?
  • What audit logs capture access enforcement decisions, and how long are they retained?
  • When was your last access control review, and what changes resulted from it?

Specifically, the evidence you request should include access control policy documents, system configuration screenshots or exports showing enforcement mechanisms, sample audit logs demonstrating denied access attempts, and reports from their most recent privilege review.

Where vendors fall short, the red flags are consistent. Look for those who cannot articulate the difference between authentication and authorization enforcement, environments where database administrators have unrestricted access to production data, and access reviews that have not occurred in the past 12 months. Any vendor storing your data in an environment where a single compromised credential can reach the full data set has not implemented AC-03.

Evidence examples

Evidence TypeExample Artifact
Access control policyFormal policy document defining subject-object access rules, approved authorization workflows, and review cadence for logical access to system resources
System configurationExported RBAC or ABAC configuration from the OS, database, and application layers showing enforced permission sets
Approved authorization listCurrent mapping of user roles to specific system privileges, including service accounts and their permitted operations
Access decision audit logsSystem audit records showing granted and denied access attempts with timestamps, subject identifiers, and target resources
System design documentationArchitecture diagrams showing where access enforcement mechanisms are deployed across the application and infrastructure stack
Privilege review reportCompleted access review from the most recent periodic audit cycle, listing accounts examined, privilege changes approved, and sign-off by the responsible owner

Cross-framework mapping

FrameworkControl(s)Coverage
ISO 27001:20225.15 Access controlPartial
ISO 27001:20225.33 Protection of recordsPartial
ISO 27001:20228.18 Use of privileged utility programsPartial
ISO 27001:20228.20 Networks securityPartial
ISO 27001:20228.26 Application security requirementsPartial
ISO 27001:20228.3 Information access restrictionPartial
ISO 27001:20228.4 Access to source codePartial
NIST SP 800-171 Rev 303.01.02 Access EnforcementPartial
  • AC-02 — Account Management: defines the lifecycle of user accounts that AC-03 enforces permissions against.
  • AC-04 — Information Flow Enforcement: controls data movement between security domains after AC-03 grants access to the originating resource.
  • AC-05 — Separation of Duties: prevents a single user from holding conflicting privileges that AC-03 would otherwise enforce individually.
  • AC-06 — Least Privilege: restricts the scope of access that AC-03 enforces, ensuring users receive only the minimum permissions their role requires.
  • AC-16 — Security and Privacy Attributes: provides the metadata labels that attribute-based enforcement mechanisms use when making AC-03 decisions.
  • AC-17 — Remote Access: extends AC-03 enforcement to sessions originating outside the organizational network boundary.
  • AC-18 — Wireless Access: applies AC-03 enforcement requirements to wireless network connections and the resources reachable through them.
  • AC-19 — Access Control for Mobile Devices: ensures AC-03 enforcement extends to organizational resources accessed from mobile endpoints.
  • AC-20 — Use of External Systems: defines the access enforcement boundaries when organizational users connect through systems the organization does not control.
  • AC-21 — Information Sharing: governs how AC-03 enforcement decisions apply when authorized users share information across trust boundaries.

Frequently asked questions

What is NIST SP 800-53 AC-03?

AC-03 is the NIST SP 800-53 control that requires systems to enforce approved authorizations for logical access to information and system resources in accordance with applicable access control policies. It operates at the system, application, and service level, meaning every layer that makes an access decision must enforce the organization’s approved authorization list rather than defaulting to implicit trust. The control applies to all three baselines (LOW, MODERATE, HIGH) and addresses both first-party and third-party environments.

What happens if AC-03 is not implemented?

Without AC-03, a single compromised credential can reach resources far beyond what the account’s role requires, turning a contained incident into a catastrophic data breach. The Anthem breach demonstrated this failure directly, where stolen administrator credentials queried an enterprise data warehouse containing 78.8 million records because no system-level enforcement restricted the account’s access scope. Regulatory consequences are severe, as HHS OCR, state attorneys general, and private litigation produced over $179 million in combined penalties and settlements for that single failure.

How do you audit AC-03?

Auditing AC-03 starts with examining the organization’s access control policy and verifying that approved authorizations for logical access are documented and current. From there, review system configuration settings at each enforcement layer, compare the approved authorization list against actual deployed permissions, and inspect system audit records for evidence that unauthorized access attempts are being denied. Interview system administrators about their privilege review cadence and test enforcement by attempting access with credentials that should be restricted.

What are the different types of access control models?

The four primary access control models used to implement AC-03 enforcement are role-based access control (RBAC), which assigns permissions based on job functions; attribute-based access control (ABAC), which evaluates policies against subject, resource, and environmental attributes at decision time; mandatory access control (MAC), which enforces access based on security labels assigned to both subjects and objects; and discretionary access control (DAC), which allows resource owners to grant permissions at their discretion. Most organizations implementing AC-03 combine RBAC with ABAC to balance administrative simplicity with granular, context-aware enforcement across their system design architecture.

Experience superior visibility and a simpler approach to cyber risk management