Federal AI Identity Governance — Governed Path
AI system identity records bound to the drift engine and the ATO reciprocity model — the FMP-managed path
Federal AI Identity Governance — Governed Path
This path extends the manual path with the Federal Modernization Program’s governance substrate. The same scripts run; the same findings are produced. What changes is that each finding is routed through the drift engine (the program decision), and reconciled against the ATO reciprocity model (the program decision). The result is a continuous governance loop, not an annual manual exercise.
The manual path is not a prerequisite. You can activate the governed path directly. However, the manual path is a useful baseline read if this is the first time your agency has applied identity governance to its AI inventory.
Prerequisites
In addition to the manual path prerequisites:
- The Federal Modernization Program substrate deployed with the
ai-inventory-governanceSaaS adapter activated (see §Activation below), or the Federal Modernization Program installed locally withsrc/fmp/governance/ai_inventory/package sailpoint-machine-identityadapter slot promoted fromreservedtoactiveif SailPoint ISC is in scope (the program decision Option B)
What the governed path adds
| Manual path | Governed path addition |
|---|---|
| CSV scan → findings report | Findings ingested as Finding objects into the Federal Modernization Program drift engine |
| ATO gap flagged in report | ATO gap cross-walked against the program decision reciprocity records; finding routed to AO |
| Unowned system listed | Owner assignment workflow triggered via the program decision governance review queue |
| Annual manual re-scan | Annual inventory vintage triggers automatic re-scan; delta findings surfaced |
| Shadow AI: manual lookup | Shadow AI compared against the Federal Modernization Program machine-identity registry automatically |
Activation
Option A — the Federal Modernization Program adapter (recommended for the Federal Modernization Program deployers)
The ai-inventory-governance conformance adapter in adapter-registry.yaml binds the scanner to the Federal Modernization Program governance substrate. To activate:
- Submit a governance-board request to promote the slot from
reservedtoactive(follow the program decision adapter activation lifecycle). - Configure the OMB inventory URL or supply the CSV path in the adapter config.
- Set the
agency_filterlist to your agency abbreviation(s). - The adapter runs annually on OMB inventory publication, and on-demand via the Federal Modernization Program CLI:
fmp ai-inventory scan \
--csv data/2025_individually_reported_AI_use_cases.csv \
--agency GSA \
--output findings.jsonOption B — Local Python package
from fmp.governance.ai_inventory import scan_inventory
result = scan_inventory(
"data/2025_individually_reported_AI_use_cases.csv",
known_registry_ids={"ACAS", "ADVANA"},
)
print(result.summary)
# Route findings to drift engine
from fmp.governance.drift_core import gate
decision = gate(result.findings)Drift engine integration
Findings from the AI inventory scan are Finding objects (drift_core.py) that pass through the standard drift gate:
P1 findings → HALT gate → governance review queue (never auto-remediated)
P2 findings → per-policy remediation → bureau identity governance coordinator
The six AI drift classes extend the the program decision taxonomy:
| Drift class | Severity | Auto-remediate | Routes to |
|---|---|---|---|
DRIFT-COMPLIANCE::ai-agentic-ungoverned |
P1 | Never | AO + ISSO |
DRIFT-IDENTITY::ai-shadow |
P1 | Never | Security team + AO |
DRIFT-COMPLIANCE::ai-ato-gap |
P2 | Never | AO + bureau ISSO |
DRIFT-IDENTITY::ai-no-agency-bureau |
P2 | Per-policy | Identity workflow |
DRIFT-IDENTITY::ai-unowned |
P2 | Never | Bureau IdM coordinator |
DRIFT-COMPLIANCE::ai-pii-no-pia |
P2 | Never | Privacy officer |
ATO reciprocity cross-walk (the program decision)
The governed path cross-walks each system_name_ato value against the Federal Modernization Program’s ATO reciprocity registry (FMP_140, the program decision):
- Match found: the system inherits the platform ATO; no ATO gap finding
- Match not found +
have_ato = Yes: candidate for reciprocity registration - No match +
have_ato = No:DRIFT-COMPLIANCE::ai-ato-gapP2 finding
For OPM HRIT-platform-hosted AI systems, the single-ATO model from the program decision means most agency deployments inherit the OPM ATO — the number of genuine ATO gaps in that vertical should be close to zero.
Annual inventory refresh cycle
When OMB publishes the next-vintage inventory:
- The
ai-inventory-governanceadapter ingests the new CSV automatically - Computes delta vs. prior vintage:
- New live entries → new identity-subject records
- Retired entries → deprovisioning workflow triggered
- ATO status changes → reciprocity registry updated
- Net-new P1 findings are surfaced immediately; P2 findings join the next governance review cycle
The inventory_vintage field in ScanResult records the year; a staleness warning fires if the vintage is more than 13 months old (FMP_196 §6).
OSCAL evidence output
The to_json method on ScanResult produces an ODR-compatible evidence payload. Map to NIST 800-53 Rev 5 controls:
| Evidence source | Controls |
|---|---|
| ATO gap findings | CA-7 (continuous monitoring), CA-8 (penetration testing prep) |
| Unowned findings | IA-4 (identifier management), AC-2 (account management) |
| PII/PIA findings | PT-2 (PIA), AR-2 (privacy impact and risk assessment) |
| Agentic ungoverned | AC-2, IA-2, SI-7 (software integrity) |
| Shadow AI | CM-8 (system component inventory), CA-7 |
| Agency/bureau gap | IA-4, AC-2 |
Offering this to OMB / other agencies: The standalone PowerShell script (Invoke-AIInventoryScan.ps1) is designed to be shared. An agency running only the manual path produces the same findings as the governed path — the difference is what happens next. The governed path automates disposition; the manual path leaves it to the operator. Both are valid starting points.
See inbox/drafts/omb-ai-governance-comment.md for the proposed OMB schema-extension letter that accompanies this kit.
Normative references
src/fmp/canon/specs/Spec4-AI-D1.1-AISystemIdentityRecord.md— FMP_196 AI System Identity Record schemasrc/fmp/canon/specs/Spec4-AI-D1.2-AISystemJMLLifecycle.md— FMP_197 AI System JML Lifecycle- the program decision — Federal AI Use Case Governance
- the program decision — AI System JML Lifecycle