Skip to content

Control-Module Catalog — the "right ATO way" per area

FieldValue
TypeSkill Resource
Source~/.copilot/skills/security/references/ato/control-module-catalog.md
DescriptionNot specified

Source Content

Control-Module Catalog — the “right ATO way” per area

The à-la-carte module catalog the platform builds to. Each row is an independently deployable control with a FedRAMP High default and a documented dial-down to Moderate / Low. Source: docs/product/roadmap/frd-fedramp-compliant-platform.mdx (FRD-SEC-001). Use this to answer “what is the right way to build this, and which level does each choice meet?”

Rule that governs every module: controls fail closed (deny on authz/policy-engine failure), every module emits OSCAL evidence, all crypto is a FIPS 140-3-validated module in approved mode, and you never hand-roll cryptography. Say “maps to control X-NN”, never “FedRAMP compliant”.

Identity & access (IA, AC)

Module800-53High — the right wayDial-downSuggested OSS / standard
Identity proofing (IAL3)IA-12Supervised in-person / supervised-remote proofing; store evidence + decisionIAL2 remote; IAL1 self-assertedProofing provider per 800-63A
Authentication (AAL3)IA-2, IA-2(1/2), IA-5Phishing-resistant hardware MFA only — FIDO2/WebAuthn, PIV/CAC. No SMS OTP.AAL2 = MFA w/ phishing-resistant optionKeycloak/Authentik + WebAuthn; PIV/CAC via PKCS#11
Federation / SSO (FAL3)IA-2, AC-14Holder-of-key assertions bound to an authenticator; OIDC/SAMLFAL2 encrypted assertion; FAL1 signed bearerAuthentik/Authelia/Keycloak IdP
Role/attribute accessAC-2, AC-3, AC-6RBAC + ABAC; enforced least privilege; periodic access reviewFewer roles, manual reviewAuthorization library
Separation of dutiesAC-5Enforced incompatible-role checks; dual control for sensitive opsAdvisory onlyPolicy in authz library
Session managementAC-11, AC-12Idle lock, absolute timeout, re-auth for step-up, concurrent-session limitsLonger timeoutsBetter-Auth/Authelia session policy
Privileged access + break-glassAC-2(7), AC-6(5)Just-in-time elevation, recorded break-glass, no standing adminStanding admin w/ MFAVault/Authentik + audit

Audit, monitoring & authorization evidence (AU, CA, SI)

Module800-53High — the right wayDial-downSuggested OSS / standard
Tamper-evident audit loggingAU-2, AU-3, AU-9Append-only, hash-chained/signed events on a defined schemaStandard immutable storageAudit log library (FRD-014)
Log retentionAU-11≥ 1 year online + 2 years offlineShorter retentionLoki + object-storage lifecycle
Central aggregation + alerting (SIEM)AU-6, SI-4Correlate, alert on security events, anomaly detectionBasic alertingLoki/Grafana + rules; Wazuh
OSCAL SSP + evidence automationCA-2, CA-7Generate machine-readable SSP; collect runtime evidenceManual SSPOSCAL evidence viewer
Continuous-monitoring dashboardCA-7Live control status, POA&M, scan resultsPeriodic reportGrafana + OSCAL feed

Data protection & cryptography (SC, MP)

Module800-53High — the right wayDial-downSuggested OSS / standard
Encryption in transitSC-8, SC-13TLS 1.2+/1.3, FIPS 140-3-validated modules, mTLS internallyTLS 1.2, edge-onlyTraefik/Linkerd; BoringCrypto/OpenSSL FIPS
Encryption at restSC-28, SC-13FIPS 140-3 module; per-tenant keys; full-disk + field-level for sensitive dataDB-level onlyPostgres TDE/pgcrypto, LUKS
Key & secret managementSC-12, SC-13, IA-5HSM/KMS-backed keys, rotation, no secrets in codeManaged KMS1Password Connect / Vault + KMS
Data classification + DLPMP-2, MP-4, SC-7Tag data by sensitivity; egress controls on classified dataTagging onlyCustom + policy

Boundary, configuration & integrity (SC, CM, RA, SI)

Module800-53High — the right wayDial-downSuggested OSS / standard
Boundary protection / segmentationSC-7WAF, default-deny network policy, microsegmentation, no flat networkEdge firewall + segmentsKyverno + NetworkPolicy, Traefik WAF
Hardened baselines + drift detectionCM-2, CM-6CIS/DISA STIG baselines as code; detect & remediate driftCIS Level 1Kyverno, OpenSCAP, IaC
Change & configuration controlCM-3, CM-4All change via GitOps + review; immutable infraPR reviewArgoCD, signed commits
Vulnerability scanningRA-5Monthly OS/web/DB + container + IaC scanningQuarterlyTrivy, OpenSCAP, ZAP
Flaw remediation SLAsSI-2By finding severity: High 30d / Moderate 90d / Low 180d, in POA&MBest-effortPOA&M automation
Integrity monitoring / malwareSI-3, SI-7FIM, image signing + admission control, runtime detectionImage scanningFalco, cosign + Kyverno

The SI-2 windows are by finding severity, independent of the system impact level. A Moderate system still fixes a Critical/High finding on the 30-day clock.

Resilience & response (CP, IR)

Module800-53High — the right wayDial-downSuggested OSS / standard
Backup & disaster recoveryCP-9, CP-10Encrypted, tested backups; documented RTO/RPO; cross-regionSingle-region backupsVelero, pgBackRest
Incident responseIR-4, IR-6IR plan, US-CERT/CISA reporting within the required window, runbooksInternal IR onlyGlitchTip + runbooks

Supply chain, SDLC & privacy (SR, SA, SI, PT)

Module800-53High — the right wayDial-downSuggested OSS / standard
Supply chain / SBOMSR-3, SR-4Generate + verify SBOM per build; provenance attestationSBOM onlySyft + cosign/SLSA
Secure SDLC scanningSA-11, SI-2SAST + DAST + secret + dependency review in CI, gatingSAST + secret scanCodeQL/Semgrep, gitleaks, Dependabot/Renovate
Privacy / PII controlsPT-2, PT-3Data inventory, consent, minimization, subject-access supportInventory + noticeConsent module, data map

What software does NOT cover (out of scope of an ATO-readiness review)

These are required for an actual ATO but are process / organizational / physical, not app code. Flag them as “out of software scope” — do not mark a change Aligned/Partial/Gap against them:

  • Authorization mechanics: agency sponsorship, 3PAO/C3PAO engagement, SAR, the ATO letter itself.
  • PE (physical/environmental), most PS (personnel security) and AT (training) beyond what software enforces.
  • US-person staffing and facility security (a hosting/contract control, even at High/IL5).

Implementation handoff (from the FRD)

When implementing a module: (1) read the mapped 800-53 control text and the relevant security doc; (2) implement the highest-assurance default with a config flag for dial-down; (3) emit OSCAL implementation statements + a runtime evidence endpoint; (4) write negative / fail-closed tests; (5) never hand-roll cryptography — use a FIPS-validated provider; (6) record a Decision Record for any deviation; (7) in code/docs say “maps to control X-NN”, not “FedRAMP compliant”.

Source

All module behavior, OSS suggestions, and dial-downs: docs/product/roadmap/frd-fedramp-compliant-platform.mdx (FRD-SEC-001). Verify control text against NIST 800-53 Rev 5.