Safeguard
Security Guides•

What should a risk register entry for a dependency say?

A dependency risk register entry needs the component, risk, evidence, owner, mitigation, and review date. Here is a short template teams can copy.

Safeguard Security Team
3 min read

A useful entry names the component and version, the specific risk, the evidence for it, who owns it, the mitigation and its status, and a review date. Keep it to a few lines. An entry without an owner and a date is a note, not a control.

Why bother

Risks that live only in people's heads disappear when those people move teams. A short register lets a product manager answer questions from executives, customers, and auditors without a scramble, and it ties dependency worries to roadmap items.

The template

FieldWhat to write
Component and versionName, version, where it is used
RiskOne sentence, such as maintainer count, end of support, license change, known vulnerability
EvidenceLink to the advisory, release page, or project statement
Likelihood and impactSimple low, medium, high with a reason
MitigationWrapper, pin, upgrade, replacement, monitoring
OwnerA named person, not a team alias
StatusOpen, mitigating, accepted, closed
Review dateWhen it will be looked at again
Related workLink to the ticket or roadmap item

Examples of good risk statements

  • "Single maintainer, last release over a year ago, used in the export module only." This follows the maintenance checks in the OpenSSF evaluation guide.
  • "Framework major version reaches end of security support on the date in the project's policy; migration needed." Under Semantic Versioning, the move is across a major boundary, so plan it as a project.
  • "Component listed in the Known Exploited Vulnerabilities catalog; fixed version available." CISA describes the catalog as an input to prioritization.

Each states a fact, points at evidence, and implies an action.

Accepted risks need extra fields

If you accept a risk, add who accepted it, the reason, and an expiry. Acceptance without an expiry becomes permanent. A not affected statement is different: it says the vulnerability cannot be exploited in your product, and it should cite a justification such as the code not being in the execute path.

Keep it light

Review the register in a monthly meeting of fifteen minutes. Close entries when work finishes. Delete entries that no longer apply rather than letting the list grow into something nobody reads.

Quick check

How many entries are too many?

When the team stops reading them. Keep the list to risks that need a decision or an action.

Who should own an entry?

The engineer closest to the component, with the product manager reviewing.

Is a risk acceptance the same as a closed risk?

No. It stays open with an expiry until fixed or reviewed.

Safeguard's compliance and evidence automation and its dependency scanning can feed the evidence column, and the free scan is at gold.safeguard.sh/scan.

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.