Chapter 22Lesson 01190–250 min

Sonatype IQ Integration, Component Intelligence, Quarantine, Policy Evaluation, and Procurement Controls: Concepts, Architecture, and Mental Model

Separate repository storage from software-supply-chain intelligence: Nexus serves and caches components, IQ Server supplies policy intelligence, Repository Firewall can govern new proxy requests, and a waiver is a scoped risk decision rather than a security fix.

Repository FirewallIQ ServerPolicyQuarantineWaivers

Learning objectives

  • Distinguish Nexus Repository, IQ Server, Repository Firewall, and Lifecycle responsibilities.
  • Trace a new proxy request through component identification, policy evaluation, and an allow/quarantine outcome.
  • Explain Audit Only, Quarantine, and PCCS modes for Nexus 3.94.0+ without relying on legacy capability instructions.
  • Explain why quarantine is policy state, not proof of malware, and why release normally requires waiver of failing violations.
  • Design waiver ownership, scope, reason, and expiry as auditable governance evidence.
Version/product baseline (27 August 2026). The dated Nexus reference line is 3.95.2-01 with Java 21. The current IQ Server GA line is 206 (released 5 August 2026). For Nexus 3.94.0+, Firewall is configured on supported repositories with repository-level Audit Only, Quarantine, or PCCS modes. Re-check live release notes before applying UI/API details.
License boundary. Repository Firewall is not bundled into Community Edition merely because CE can connect to it. Sonatype documents Firewall as working with Nexus Repository Community or Pro when the deployment also has an IQ Server/Firewall service with a valid Repository Firewall license. Mandatory exercises in this chapter use synthetic fixtures only; no paid service is required.
Safety boundary. Never point policy experiments at production proxy repositories, disable Firewall to unblock a build, create broad waivers, expose IQ/Nexus credentials, or use real employer component names. Use synthetic component identifiers, loopback files, fake users, and documented review evidence.

1. The practical problem: a repository can store bytes without deciding whether you should consume them

Chapter 21 established artifact identity and promotion. That still leaves a procurement question: when a developer asks a proxy repository for a third-party component, should the organization admit it? Nexus Repository can authenticate the request, route it to an upstream, cache the bytes, and serve them. Those mechanics do not by themselves tell you whether a component violates a security, license, architecture, or malicious-component policy.

Repository Firewall adds a policy decision at the repository boundary. It uses component intelligence supplied through the Sonatype IQ platform and applies configured policy actions to supported proxy requests. The crucial mental separation is storage state versus intelligence/policy state. A policy outcome may change tomorrow when intelligence or policy changes while the artifact bytes and checksum remain identical.

2. Product boundary: four names that must not collapse into one

Layer Primary responsibility What it is not
Nexus Repository Repository endpoints, auth, proxy/hosted/group routing, component/asset metadata, database state, blob storage, client responses. A vulnerability database or application policy engine by itself.
IQ Server / Sonatype IQ platform Service that powers component intelligence and licensed products such as Lifecycle and Repository Firewall. The blob store holding your Maven/npm/PyPI package bytes.
Repository Firewall Procurement/admission governance at supported repository proxy boundaries: audit, quarantine, policy-compliant selection where supported. A generic CI scanner or proof that every stored component is safe.
Lifecycle Application-oriented policy evaluation, reporting, continuous monitoring, remediation and governance across application/organization context. A replacement for Nexus repository storage or routing.

A Nexus Community installation can participate in a licensed Firewall deployment; this does not make Firewall a free CE feature. Conversely, buying Nexus Pro is not the same as buying Lifecycle or Repository Firewall. Always verify the actual entitlement and IQ Server license.

3. Mental model: request → identify → evaluate → disposition

Repository request and policy decision boundaries
flowchart TD
  DEV[Developer or CI] -->|request component| NX[Nexus proxy repository]
  NX --> UP[Public upstream]
  UP --> CAND[New component candidate]
  CAND --> IQ[IQ Server / Firewall service]
  IQ --> INTEL[Component intelligence]
  POL[Configured policy context] --> IQ
  IQ --> DEC{Policy disposition}
  DEC -->|allowed| CACHE[Nexus cache / serve]
  DEC -->|failing policy| Q[Quarantine]
  Q --> REVIEW[Human or governed review]
  REVIEW -->|scoped waiver| REL[Release]
  CACHE --> DB[(Nexus database metadata)]
  CACHE --> BLOB[(Nexus blob bytes)]

The request begins at Nexus, but the policy decision depends on external intelligence and configured policy. When content is allowed into the proxy, Nexus persists normal repository state: database metadata and blob bytes. Quarantine adds policy/disposition state around the requested component; it is not a special checksum algorithm and it does not transform the artifact.

4. Current Nexus 3.94+ Firewall modes

Mode Repository behavior Use
Audit Only Evaluate and record policy violations without blocking downloads. Baseline visibility before enforcement, policy tuning, rollout observation.
Quarantine Prevent consumers from downloading components that are quarantined after policy evaluation. Enforce procurement rules at supported proxy boundaries.
PCCS Quarantine plus policy-compliant metadata filtering. Currently specific to npm and PyPI; helps select versions without failing policy violations.

Do not copy pre-3.94 instructions that create a Firewall Audit and Quarantine capability as the current workflow. Sonatype explicitly labels that capability path legacy for older versions. On 3.94+, configuration lives in the repository configuration itself.

5. Quarantine is a disposition, not a malware verdict

A component can be quarantined because a policy with a failing action was triggered. The evidence may involve security risk, license governance, malicious/suspicious research findings, or another configured policy. Therefore “quarantined” means the current policy says do not deliver this newly requested component. It does not mean a forensic analyst proved malware.

Sonatype also documents a subtle boundary: Firewall quarantine applies to newly requested components. Content already present in a proxy repository is audited but is not retroactively quarantined in the same way, specifically to avoid suddenly breaking existing builds. That is one reason repository admission controls and application-level continuous monitoring are complementary.

6. Availability behavior must be documented, not guessed

For repositories using quarantine, current Sonatype guidance states that the Firewall quarantine service fails closed: if the service is unavailable, new component requests are placed into quarantine until they can be evaluated and released. That is different from Audit Only, where the point is observation rather than blocking.

Operational consequence. Never invent a “temporary fail-open” toggle in a runbook. If a production policy gate becomes unavailable, preserve evidence, confirm the documented mode and service health, follow the organization’s approved incident procedure, and communicate the expected developer impact. Disabling Firewall can release quarantined components, so it is not a harmless troubleshooting step.

7. A waiver is scoped risk acceptance

Releasing a quarantined component generally requires the failing violations that caused quarantine to be waived. A waiver does not patch the dependency, change its checksum, remove the vulnerability, or prove the license acceptable. It records that an authorized reviewer is accepting a defined risk for a defined scope.

Waiver field Governance question Safer default
Owner scope Application, organization, repository, or broader hierarchy? Smallest scope that satisfies the need.
Component matcher Exact version, all versions, or all components? Exact component/version when practical.
Reason/comment Why is risk accepted and what mitigates it? Specific rationale linked to owner/ticket.
Expiry When must the decision be reconsidered? Short, explicit duration rather than never-expiring.
Reviewer Who is authorized to accept this risk? Named role/person independent from automatic build success.

8. State map: what actually changes

  • Nexus repository configuration: IQ/Firewall connection details and per-repository Firewall mode.
  • Nexus database/blob state: normal component/asset metadata and binary content for admitted/cached artifacts.
  • IQ/Firewall state: component identification, policy configuration, violations, quarantine records, waiver records, intelligence freshness.
  • Client state: repository URL, credentials, package-manager caches, received HTTP errors such as a blocked/quarantined request.
  • Governance evidence: reviewer, rationale, expiry, exception ticket, policy snapshot, timestamps.

Never “repair” a policy problem by deleting Nexus database rows or blob files. Those are different state stores and direct manipulation can corrupt repository consistency without changing the underlying policy decision.

9. Read-only inspection before enabling enforcement

  1. Record Nexus version, edition, Java runtime, repository format/type, and whether the target is disposable.
  2. Verify the actual Firewall/IQ license and IQ Server version; do not infer entitlement from Nexus CE/Pro alone.
  3. For Nexus 3.94+, inspect the repository’s Firewall section and current mode without changing it.
  4. Verify IQ connectivity using the product’s supported connection test; never print the service credential.
  5. Inventory repository content already present versus content not yet requested; quarantine semantics differ.
  6. Export or document the relevant policy/waiver context and identify who owns exception decisions.

10. Why this matters in DevOps

Artifact governance is strongest when it becomes a deterministic boundary rather than an informal approval message. CI asks Nexus for a component; Nexus routes the request; Firewall/IQ supplies policy evidence; a disposition is observable; exceptions are scoped and expire; downstream teams can explain why a component was admitted. This creates the foundation for Chapter 23, where SBOM, provenance, vulnerability intelligence, signatures, and policy evidence are compared explicitly.

11. Knowledge check

Does Nexus Repository Community Edition include Repository Firewall for free?

What does Quarantine mode prove about a component?

For Nexus 3.95.x, should you configure Firewall through the old Audit and Quarantine capability workflow?

A quarantine waiver has no expiry and applies to all components in the root organization. What is the principal problem?

What happens to new component requests if the quarantine service is unavailable while quarantine is enabled?

12. Summary and next step

You now have a precise boundary between repository storage and component-policy intelligence, a current 3.94+ Firewall mode model, and a governance interpretation of quarantine and waivers. Lesson 2 turns that model into a completely local, fixture-driven procurement workflow that requires no commercial service.

Official references and version notes

Keep the academy open

Support free, practical DevOps education.

Every lesson is designed to remain readable in a browser, downloadable from GitHub, and usable without a paid learning platform. Contributions help expand and maintain the curriculum.

Ethereum / ERC-20
0x716c4Ab160C4B66F31a28AE2448BfF68fc3a2ef0 Send only Ethereum/ERC-20 compatible assets to this address.