Safeguard
Compliance•

How should you record risk exceptions for NIST CSF 2.0 ID.RA-07?

ID.RA-07 asks that changes and exceptions are managed, assessed, recorded and tracked. See how to log exceptions to scans and policies so they hold up.

Safeguard Security Team
4 min read

ID.RA-07 reads: "Changes and exceptions are managed, assessed for risk impact, recorded, and tracked". Keep an exception register with the reason, risk assessment, approver, compensating control and an end date, and review it on a schedule. An exception with no expiry is just a permanent gap.

Why exceptions need their own record

Every real engineering team grants exceptions: a vulnerability that cannot be patched this quarter, a service that cannot yet use single sign on, a build that ships past a failed check to fix an outage. The NIST CSF 2.0 subcategory ID.RA-07 asks that these are managed, assessed for risk impact, recorded and tracked, together with ordinary changes.

The framework does not say how. A register in a ticket system or a repository is enough, provided every entry carries the same fields and someone reviews it.

Fields for an exception entry

FieldWhy it matters
What is exceptedNames the control, check or policy
ScopeWhich system, repository or period
ReasonThe business or technical constraint
Risk assessmentLikelihood and impact in plain words
Compensating controlWhat reduces the risk meanwhile
ApproverA person with authority, not the requester
Expiry dateWhen it must be fixed or reapproved
StatusOpen, extended, closed

The approver and expiry are the fields that most often go missing. Without them, nobody is accountable and nothing forces a revisit.

Running the register

  1. Make the register the only route to an exception. If a pipeline check can be bypassed, require a link to an entry.
  2. Review open entries monthly. Close ones that are fixed, and escalate those near expiry.
  3. Track the count and the age of open exceptions. A rising number is a signal to look at root causes.
  4. When an exception is extended, record why, and require a higher level of approval for a second extension.
  5. Report the register to whoever owns risk at least quarterly.

This also gives you a ready answer when a customer asks how you handle findings you cannot fix right away.

Changes count too

The subcategory mentions changes along with exceptions. Normal change records, such as reviewed pull requests with an impact note for risky changes, belong in the same story. For emergency changes, record them after the fact with the same fields, and review them in a retrospective.

Try it yourself

Try the exploitability check demo to see how a finding can be judged for real risk. That judgment is the risk assessment field of your exception entry.

Click through it at your own pace, or open it full screen.

Where Safeguard fits

Safeguard supports policies, gates and guardrails on pull requests, plus compliance and evidence automation, so gate outcomes can be kept as records. You can try the free scan at gold.safeguard.sh/scan. Treat any export as input to your own review, not as a finding of compliance.

Quick check

Do accepted risks need an expiry?

The subcategory says exceptions are tracked, and an end date is a practical way to make sure tracking leads to a decision. It is good practice rather than a quoted requirement.

Who should approve an exception?

Someone with authority over the risk, who is not the person asking. Write the rule in your policy and follow it.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.