Most access control asks who may read a record. AC-4 asks something different: where may that record travel? It requires you to enforce approved authorizations for controlling the flow of information within the system and between connected systems, based on policy rules you define.
SP 800-53 binds US federal systems, and reaches contractors by contract. For other companies it is a reference. If you handle regulated customer data, a buyer may well ask about flow control under another name, such as data egress or network segmentation.
What the control asks
Enforce flow authorizations according to the flow control policies you set. NIST leaves those policies to you. The statement has no sub items, so the work is in deciding what your policies are and proving the system follows them.
What it means in practice
The guidance describes flow control as regulating where information can go, regardless of who accessed it first. Its examples:
- Blocking outside traffic that claims to come from inside your network.
- Keeping export controlled information from leaving in the clear.
- Restricting web requests that do not come through the internal proxy.
- Limiting transfers between organizations based on data structure and content.
When data crosses between domains that have different policies, the guidance says information owners give direction at designated enforcement points. It lists enforcement options: prohibit transfers between connected systems, check write permissions before accepting data from another domain, use hardware for one way flows, and use filters.
The enhancements show the range of techniques: AC-4.1 Object Security and Privacy Attributes, AC-4.2 Processing Domains, AC-4.3 Dynamic Information Flow Control, AC-4.4 Flow Control of Encrypted Information, AC-4.5 Embedded Data Types, AC-4.6 Metadata, AC-4.7 One way Flow Mechanisms and AC-4.8 Security and Privacy Policy Filters. Most small and mid size companies will use a handful: network segmentation, egress filtering, and a DLP or proxy check on outbound transfers. AC-4.4 matters because encrypted traffic hides content from filters, so you decide where decryption happens.
Evidence to collect
- The flow control policy: which data classes may move where.
- Network diagrams showing zones and enforcement points.
- Firewall, security group and proxy rules, exported with dates.
- Egress filtering configuration for production.
- A test showing a blocked flow, such as production reaching an unapproved external host.
- Agreements covering transfers to partner organizations. The guidance points to CA-3 for these.
Common gaps
- Production servers allowed outbound access to the whole internet.
- Flat networks where every system reaches every other system.
- Data pipelines that copy production data into test environments without controls.
- No review of firewall rules, so old exceptions pile up.
- Third party integrations that receive more fields than they need.
How to implement it
Draw the zones first: public, application, data, management. Default deny between zones and open only the paths you can name. Add egress allowlists for production, so a compromised server cannot call home freely.
For data pipelines, decide which fields may leave each zone and strip the rest. Review rules each quarter, and delete exceptions with no owner.
If your software depends on packages that fetch from outside registries at build time, flow control reaches your build environment too. Knowing what your dependencies are and what they pull in is part of the picture. You can check a dependency list for known vulnerabilities in your browser with the free scan at https://gold.safeguard.sh/scan.
Quick check
How is flow control different from access control?
Access control decides who can reach data. Flow control decides where data may travel, regardless of subsequent accesses.
Which enhancement covers one way transfers?
AC-4.7 One way Flow Mechanisms.
Sources
- NIST SP 800-53 Rev 5, AC-4: https://csrc.nist.gov/projects/cprt/catalog#/cprt/framework/version/SP_800_53_5_1_1/home?element=AC-4
- NIST OSCAL catalog of SP 800-53 Rev 5: https://raw.githubusercontent.com/usnistgov/oscal-content/main/nist.gov/SP800-53/rev5/json/NIST_SP-800-53_rev5_catalog.json