Skip to content

Data Management

Vulcan has two distinct systems for moving data in and out. They serve different purposes and understanding the difference helps you pick the right tool for the job.

Two Systems, Two Goals

Import & Export — Format Conversion

Question you're answering: "I need my data in a different format."

Import/Export converts your Vulcan data to and from external formats that other tools understand. Each format serves a specific audience:

FormatWho It's ForWhat It Does
XCCDFDISA, SCAP scanners, STIG ViewerStandard DISA XML — the format STIGs are published in
ExcelDISA reviewers, team leadsSpreadsheet for submission or offline review
CSVData analysts, scriptingFlat file for bulk processing
InSpecDevSecOps engineersAutomated compliance scanning profiles

Every export format is lossy by design. XCCDF only includes "Applicable - Configurable" rules. DISA Excel blanks out fields that DISA fills in during finalization. CSV flattens hierarchical data. Each format gives the consumer exactly what they need — nothing more.

Use Import/Export when you need to:

  • Submit to DISA for STIG publication
  • Share with tools that consume XCCDF or InSpec
  • Review data in a spreadsheet
  • Load SRGs and STIGs from DISA XML files
  • Create a component from a spreadsheet

Import & Export Reference

Backup & Restore — Full-Fidelity Preservation

Question you're answering: "I need to save, move, or clone my project."

Backup/Restore creates a complete snapshot of a project — every field, every status, every relationship — in a ZIP archive. Nothing is filtered, converted, or lost.

What's PreservedDetails
All rule statusesIncluding "Not Yet Determined" and "Not Applicable"
All rule fieldsInSpec code, vendor comments, descriptions, everything
Satisfaction relationshipsWhich rules satisfy which other rules
ReviewsFull review history with comments and timestamps
MembershipsUser roles (matched by email on restore)

Use Backup/Restore when you need to:

  • Move a project to another Vulcan instance
  • Create a copy of a project to start a new version
  • Recover from data loss
  • Share a complete project with another team
  • Import specific components from one project into another

Backup & Restore Reference

Decision Guide

I want to...Use
Submit my component to DISAExport → DISA Vendor Submission
Share progress with my team in a spreadsheetExport → Working Copy (Excel/CSV)
Generate an InSpec profile for scanningExport → STIG-Ready Publish Draft (InSpec)
Move my project to a new serverBackup → Restore on new instance
Clone a project to start v2Backup → Create New Project from Backup
Recover a deleted componentBackup → Restore into existing project
Load a new SRG from DISAImport → SRG XML upload
Create a component from someone's spreadsheetImport → Spreadsheet import
Send my project to a colleague running VulcanBackup → Send ZIP, they restore

Project Export Modes

When exporting from a Project, Vulcan asks you to pick a purpose first, then a format. This ensures the right rules and fields are included for your audience:

Purpose                    → Format        → What's Included
─────────────────────────────────────────────────────────────
Working Copy               → CSV, Excel    → All rules, all fields, as-authored
DISA Vendor Submission     → Excel         → Non-NYD rules, DISA 17-column strict
STIG-Ready Publish Draft   → XCCDF, InSpec → AC rules only, no satisfied-by
Backup                     → JSON Archive  → Everything — full fidelity

Components, STIGs, and SRGs use a simpler format-only picker (XCCDF or CSV) since they don't need mode selection.

Database vs Application Backup

Vulcan's backup system operates at the application level — it exports project data as structured JSON. This is different from a database backup (pg_dump), which copies the entire PostgreSQL database.

Application Backup (JSON Archive)Database Backup (pg_dump)
ScopeOne project at a timeEntire database
PortabilityWorks across Vulcan instancesSame PostgreSQL version required
SelectivityChoose which componentsAll or nothing
User-accessibleYes, from the UIAdmin/ops only
Cross-versionTolerant of schema changesExact schema match needed
Use caseProject migration, sharing, cloningDisaster recovery, server migration

For server-level disaster recovery, use pg_dump (documented in each deployment guide). For project-level work, use the in-app backup.

Part of the MITRE Security Automation Framework (SAF)