Opsfolio: Control Crosswalks Across Frameworks
One control, many frameworks. We load the published Secure Controls Framework (SCF) crosswalk into SQLite and build per-framework views, so a team assessed against HIPAA, SOC 2, NIST and ISO 27001 maintains one set of controls instead of four spreadsheets. Every mapping traces to a published crosswalk row your engineers and auditors can query.
The Customer Problem: Four Multi-Framework Control Failures
Crosswalk chaos
The same control is described four ways in four spreadsheets, one per framework, and nobody can say which version an auditor saw last.
Framework churn
Every new framework or revision (PCI DSS 4.0, NIST SP 800-53 Rev. 5, the EU Cyber Resilience Act) starts another manual re-mapping project.
Controls far from the code
Controls are documented in a GRC tool or a wiki, away from the systems and pipelines engineers work in, so they drift from what actually runs.
Mappings nobody can query
The mapping lives in a consultant's workbook or a vendor's SaaS. An auditor cannot inspect how a control was mapped, only that it was.
The Consequential Solution: Controls as Code, Compared with Evidence
Operational Truth™ starts from intent written as code. The controls a framework requires are expected controls: declarative, versioned and machine-readable. What your systems actually show is observed evidence. Opsfolio keeps both in SQL so the gap between them is a query, not an opinion.
- One control set, many reports. Each Secure Controls Framework control carries its published mapping to dozens of standards, so one implementation reports to every framework in scope.
- Mappings you can read. Per-framework views are plain SQL in a SQLite file: reviewable in a pull request, versioned, and open to any SQL tool your auditor uses.
- Gaps in both directions. A required control with no evidence is a truth gap. Evidence with no control behind it is unmanaged risk. Both are listed, not inferred.
| Side | The question it answers | Where it comes from |
|---|---|---|
| Expected controls | What controls, safeguards and behaviors are required to exist? | Regulations and standards, risk assessments, control frameworks, approved procedures and audit commitments. |
| Observed evidence | What controls and behaviors exist right now? | System state and configuration, logs and scans, test runs and control checks, records of human workflows. |
| Truth gap | Which required controls cannot be shown? | An expected control with no matching evidence. |
| Unmanaged risk | What is happening that nobody required? | Evidence of systems or processes no control describes: shadow processes, drift, bypassed approvals. |
What Netspective Offers: Engineering Responsibility
Crosswalk loading and normalization
We load your licensed copy of the SCF crosswalk into SQLite and build the per-framework views for the standards you are assessed against.
Overlap and gap analysis
We show which controls serve several frameworks at once, which are unique to one, and which have no evidence behind them yet.
Human mapping review
A named engineer reviews every mapping decision that is not a direct crosswalk row and writes down why, so the reasoning survives the next audit.
The evidence side comes from surveilr, and from Opsfolio CaaS when you want collection and review run as a program.
Technical Architecture: SCF Crosswalk to Framework Views
- SCF 2024.2 CSVYour licensed copy of the crosswalk
- surveilr ingest
--csv-transform-autoloads it as a table - Crosswalk tableOne row per SCF control, one column per framework
- Framework views
compliance_regime_controland one view per framework - Queries and dashboardsOverlap, gaps and coverage in SQL
Frameworks the crosswalk reaches
| Framework | What it governs | View status |
|---|---|---|
| SOC 2 | Trust Services Criteria for security, availability, processing integrity, confidentiality and privacy. | Built |
| HIPAA Security Rule | Administrative, physical and technical safeguards for electronic protected health information. | Built |
| ISO 27001 | An information security management system and its Annex A controls. | Built |
| NIST SP 800-171 and CMMC | Federal contract information and Controlled Unclassified Information: CMMC Level 1 covers basic safeguarding; Level 2 has 110 requirements aligned to NIST SP 800-171. | Built |
| HITRUST CSF | A healthcare framework that folds HIPAA, ISO 27001, NIST and PCI DSS into e1, i1 and r2 assessments. | e1 built |
| FedRAMP | NIST SP 800-53 baselines at Low, Moderate and High impact for cloud services sold to federal agencies. | Per engagement |
| PCI DSS | Twelve requirements protecting cardholder data: networks, data protection, vulnerability management, access, monitoring and policy. | Per engagement |
| GDPR and CCPA | Privacy obligations: lawful processing and data subject rights, consumer rights to know, delete, correct and opt out. | Per engagement |
| EU Cyber Resilience Act | Product-centric obligations for products with digital elements: SBOM and supply chain, vulnerability handling and reporting, secure-by-default, lifecycle support. | Per engagement |
Crosswalk Query Explorer
Four steps from a crosswalk file to a gap list an auditor can re-run. Every query is SQLite.
Panel 1: SCF crosswalk to framework views
One SCF control, many frameworks: a UNION over the crosswalk columns builds a single view with one row per control per framework.
surveilr ingest files --csv-transform-auto -r ingest # ingest/SCF_2024.2.csv
surveilr shell ./stateless.sql
-- One SCF control, many frameworks: a UNION over the SCF crosswalk columns
CREATE VIEW compliance_regime_control AS
SELECT `SCF Domain` AS scf_domain,
`SCF Control` AS scf_control,
`Secure Controls Framework (SCF) Control Description` AS control_description,
`SCF Control Question` AS control_question,
"SCF #" AS control_code,
`US HIPAA` AS control_id,
'US HIPAA' AS control_type
FROM uniform_resource_scf_2024_2 WHERE `US HIPAA` != ''
UNION
SELECT `SCF Domain`, `SCF Control`,
`Secure Controls Framework (SCF) Control Description`,
`SCF Control Question`, "SCF #",
`NIST 800-171A rev 3`, 'NIST'
FROM uniform_resource_scf_2024_2 WHERE `NIST 800-171A rev 3` != '';
Public sample From the public compliance-explorer pattern in the surveilr patterns repository. The SCF data itself is published by the Secure Controls Framework under its own license and is not redistributed here.
Panel 2: Confirm what was loaded
After ingestion, list the crosswalk tables and views the database now holds.
surveilr shell --output table --cmd \
"SELECT type, name FROM sqlite_master
WHERE name LIKE 'uniform_resource_scf%' OR name LIKE '%_control'
ORDER BY type, name;"
Reads: SQLite's own catalog, sqlite_master. Command from the public surveilr CLI reference.
Panel 3: Controls shared across frameworks
Which SCF controls serve more than one framework in scope, and which frameworks they serve.
-- Synthetic illustration: SCF controls shared across the frameworks in scope.
-- compliance_regime_control is the view from Panel 1 (one row per SCF
-- control per framework); it is a table here so the query runs as written.
CREATE TABLE IF NOT EXISTS compliance_regime_control (
scf_domain TEXT, scf_control TEXT, control_description TEXT,
control_question TEXT, control_code TEXT, control_id TEXT, control_type TEXT
);
SELECT control_code,
scf_control,
COUNT(DISTINCT control_type) AS frameworks,
group_concat(DISTINCT control_type) AS covered_by
FROM compliance_regime_control
GROUP BY control_code, scf_control
HAVING COUNT(DISTINCT control_type) > 1
ORDER BY frameworks DESC, control_code
LIMIT 20;
Synthetic illustration On a real database, drop the CREATE TABLE and query the Panel 1 view. Runs as written in SQLite 3.
Panel 4: Required controls with no evidence
The truth gap for one framework: controls it requires that no evidence file is linked to yet.
-- Synthetic illustration: required controls with no evidence on record
-- (Expected ≠ Observed). evidence_link stands in for the mapping from a
-- control to the evidence files in your RSSD.
CREATE TABLE IF NOT EXISTS compliance_regime_control (
scf_domain TEXT, scf_control TEXT, control_description TEXT,
control_question TEXT, control_code TEXT, control_id TEXT, control_type TEXT
);
CREATE TABLE IF NOT EXISTS evidence_link (control_code TEXT NOT NULL, uri TEXT NOT NULL);
SELECT c.control_type,
c.control_id,
c.control_code,
c.scf_control
FROM compliance_regime_control c
LEFT JOIN evidence_link e ON e.control_code = c.control_code
WHERE c.control_type = 'US HIPAA'
AND e.control_code IS NULL
ORDER BY c.control_code;
Synthetic illustration evidence_link is illustrative, not an Opsfolio schema. Runs as written in SQLite 3.
Verified Proof Ledger (Engineering Ground Truth)
| Claim | Status | What it rests on |
|---|---|---|
| SCF 2024.2 crosswalk loaded into per-framework SQL views | Built and tested | The public compliance-explorer pattern in the surveilr patterns repository. |
| Framework views for HIPAA, NIST 800-171, SOC 2, HITRUST e1, ISO 27001 and CMMC | Built and tested | The same pattern; the SCF data itself is licensed by its publisher. |
| Views for FedRAMP, PCI DSS, GDPR, CCPA and the EU Cyber Resilience Act | Designed | Built per engagement from the same crosswalk columns; not in the public pattern. |
| Platform controls library, readiness scoring and audit sessions | Designed | Shown as screenshots on opsfolio.com; the platform rebuild is paused, so not offered. |
| Automated determination that a framework is satisfied | Not established | A mapping is a lookup. Implementation and effectiveness are assessed by people. |
| AI gap prediction, predictive risk scoring or a 200+ integration catalog | Not established | No public implementation; not part of this offer. |
Real-World Scenarios
A crosswalk shows which requirement a control supports. It is not an audit determination; your assessor decides.
Health-tech SaaS: SOC 2 and HIPAA
One access-control implementation reports to SOC 2 CC6.1 and the HIPAA technical safeguards, instead of being documented twice.
Defense supplier: CMMC Level 2 and ISO 27001
The 110 NIST SP 800-171 requirements behind CMMC Level 2 are mapped against an existing ISO 27001 control set, so the remaining work is a list, not a guess.
EU market entry: SOC 2 to the Cyber Resilience Act
A SOC 2 holder sees which organization-level controls carry over and which product obligations (SBOM, vulnerability reporting, lifecycle support) are new.
Scoped Pilot: The 2-Week Control Mapping Workshop
What the two weeks deliver
Week 1: load and model
Load your licensed SCF crosswalk into SQLite and build the views for every framework in scope.
Week 2: overlap and gaps
Walk the shared and unique controls with your team, list the gaps, and hand over the SQL views.
Boundaries
- A mapping is a lookup, not an audit determination. Whether a control is implemented and effective is assessed separately, by people.
- The SCF data is published and licensed by the Secure Controls Framework; you obtain it, and we do not redistribute it.
- Opsfolio platform features beyond these views (readiness scoring, audit sessions) are not part of this offer while the platform rebuild is paused.