Datasheet

Multi-Vendor Scan Orchestration

3 min read

Get the document

Tell us where to send it. The PDF lands in your inbox in under a minute.

About

About this datasheet

Run, watch, adopt, and import every vendor scan from one console, with one status model and one deduplicated finding queue.

A scan in PMAP is a single execution context for vulnerability scanning, whether an analyst launched it, a cron schedule triggered it, or it was adopted automatically from a remote scanner. The scan domain owns it end to end; the integration domain sits beneath as the universal connector hub.

PMAP collapses that into one console, one vendor-neutral status model, and one deduplicated finding queue. The design is deliberately a faithful mirror: background loops adopt any vendor scan not yet in PMAP, and a blocklist guard ensures a deleted scan is never silently re-adopted.

Every result is resolved against the existing queue before a finding is written.
Every result is resolved against the existing queue before a finding is written.

The problem at enterprise scale is not running one scanner. It is running many, concurrently, across VM, DAST, SAST, SCA, and network discovery.

At a glance

  • Backend domains: internal/scan and internal/integration (Go modular monolith)
  • Connectors: 30 vendor subpackages: VM, DAST, SAST, SCA, container, mobile, network, ITSM, CI/CD
  • Status model: Vendor-neutral, system-written; vendor strings mapped through statusMap
  • Live sync: 30-second status ticker, 5-minute orphan adoption, 5-minute meta backfill
  • Import pipeline: Four-case correlation (scanner_ref, fingerprint, reopen, create), idempotent
  • Scheduling: In-process robfig/cron, reload every 5 minutes, 10-minute job timeout
  • Multi-tenancy: ScopeFilter on every list; 404-not-403 scope check on item paths

How it works

Many scanners, one orchestration layer. PMAP mirrors every vendor scan list, normalises status to one model, and feeds a single deduplicated finding queue, so coverage is managed in one place instead of a dozen consoles.

Scan status is not an analyst-driven state machine. It is written by the system, by the 30-second sync loop and the import pipeline, and always reflects vendor reality plus PMAP’s import phase. Vendor strings enter the model in exactly one place: statusMap.

Three background loops, all started at boot, keep the inventory current on independent tickers so time-critical work stays responsive while expensive work runs less often. Long operations never block the request.

Key capabilities

  • Scheduled imports. A scan carrying schedule_cron is registered with an in-process cron (robfig/cron, 5-field), reloaded every 5 minutes. Each job runs the full pipeline under a 10-minute timeout, attributed to a fixed system user.
  • On-demand sync. A sync endpoint fires an immediate vendor status poll plus orphan-adoption pass in a detached goroutine, returns HTTP 202, and survives the HTTP request being cancelled. The Refresh button is wired to it.
  • Intentional deletion. Delete writes the integration and external scan ID to a blocklist so adoption never re-creates the scan. A cascade flag also asks the vendor to delete, best-effort, with a warning on failure rather than a rollback.
  • History backfill. Onboarding a scanner with years of history queues import for every completed, zero-imported scan. It is idempotent: only zero-imported scans are eligible, so re-running once imported returns zero.

Use cases

  • Consolidate a multi-vendor estate. A CISO needs one view across Nessus, Qualys, Rapid7, and a DAST tool. PMAP adopts every vendor scan list, normalises status, and presents one grid instead of four consoles.
  • Watch a wave land and triage once. A vulnerability manager imports a completed Qualys scan. Four-case correlation deduplicates recurrences and reopens what came back; per-severity counts refresh from real findings.
  • Automate recurring imports. A SOC lead sets a nightly cron on a Nessus-backed scan. The scheduler fires under a system user with a bounded timeout and emits the completion event, no console needed.

One console for every vendor scan, one deduplicated finding queue.

See it live

Ready to see PMAP in action?

Talk to our team or jump straight into a guided tour of the platform.

We use your email only to set up your guided tour. No marketing drip, no third-party tracking.