Background
Across the v3.4.0 audit umbrella (#326), four separate audits independently proposed introducing curated reference data files. The pattern is consistent enough to warrant coordinated treatment as a v3.5 release theme: canonical reference data layer for cross-consumer M365 governance.
The four proposed files
| File |
Surfaced in |
Purpose |
data/role-tiers.json |
#328 (PIM, #373) |
Tier-0 / Tier-1 / Tier-2 role inventory referenced by all PIM detection logic |
data/microsoft-first-party-appids.json |
#361 (M365-Assess feedback) |
Canonical Microsoft owner-tenant + AppId allowlist for service principal classification |
data/transport-rule-actions.json |
#339 (mail flow, #381) |
~50 transport rule action types classified as benign / suspicious / hostile |
data/power-platform-connectors.json |
#336 (Power Platform, #384) |
Power Platform connectors with recommended classifications (Business / Non-Business / Blocked) |
Why coordinate as a single release theme
These files share strong design characteristics:
- Curated reference data, not crosswalk data. They classify or enumerate Microsoft-controlled artifacts, not framework mappings.
- Consumer-side authoritative lookups. Each consumer (M365-Assess, Az-Assess, EZ-CMMC) needs the same data. If CheckID owns them, consumers don't reimplement.
- Update cadence is product-driven. When Microsoft adds a Power Platform connector or rebrands a role, the file needs refresh — not a per-consumer concern.
- Schema design opportunity. Establishing a common JSON shape (
{ id, displayName, classification, source, lastReviewed }) across all four files makes consumer ingestion uniform.
Scope of work
Schema design
Per-file authoring
Build pipeline integration
Consumer-facing documentation
Acceptance criteria
Source
v3.4.0 audit umbrella #326. Files independently proposed in #328 / #336 / #339 / #361.
Background
Across the v3.4.0 audit umbrella (#326), four separate audits independently proposed introducing curated reference data files. The pattern is consistent enough to warrant coordinated treatment as a v3.5 release theme: canonical reference data layer for cross-consumer M365 governance.
The four proposed files
data/role-tiers.jsondata/microsoft-first-party-appids.jsondata/transport-rule-actions.jsondata/power-platform-connectors.jsonWhy coordinate as a single release theme
These files share strong design characteristics:
{ id, displayName, classification, source, lastReviewed }) across all four files makes consumer ingestion uniform.Scope of work
Schema design
data/registry.schema.json(or siblingdata/reference-data.schema.json)id,displayName,classification(enum per file),source(URL or "msft-1p"),lastReviewed(ISO date)Per-file authoring
data/role-tiers.json— populate from Microsoft "highly privileged roles" guidance + PIM classifications. Source of truth for audit-followup: Privileged access (PIM) — gap CheckIDs + narrative refresh tracking #373's PIM gap CheckIDs.data/microsoft-first-party-appids.json— already proposed in data: introduce data/microsoft-first-party-appids.json (canonical Microsoft owner-tenant + AppId allowlist) #361; continue under v3.5 banner.data/transport-rule-actions.json— populate from Exchange transport rule schema; classify each action.data/power-platform-connectors.json— populate from Power Platform connector catalog; classify each connector.Build pipeline integration
Build-*.pyor curation script if data sourced from external (similar toBuild-CisM365Crosswalk.py)tests/registry-integrity.Tests.ps1docs/SCHEMA-MIGRATION-3.x.mdConsumer-facing documentation
docs/REFERENCE-DATA.md— explain what these files are, how consumers should ingest them, schema contractAcceptance criteria
Source
v3.4.0 audit umbrella #326. Files independently proposed in #328 / #336 / #339 / #361.