Identity Governance: The Foundation of Zero Trust
When attackers compromised Okta's support portal in October 2023, they didn't need to crack a single password — they downloaded session tokens from support tickets and walked into customer environments wearing legitimate identities. The breach exposed a truth that identity governance programs exist to address: access isn't secure just because the credential is valid. The session tokens were real, the users were real, but the access was unauthorized — and most affected organizations didn't detect it for weeks because their identity tooling couldn't distinguish between a legitimate admin session and a stolen one.
Why Identity Governance Has Become Non-Negotiable
The federal government codified what practitioners already knew. Executive Order 14028 mandates zero-trust architectures across federal agencies, and OMB M-22-09 explicitly names identity as the primary security perimeter — not the network boundary, not the firewall, not the VPN concentrator. Identity is the control plane.
The Okta breach wasn't isolated. Microsoft disclosed in January 2024 that a Russian state actor accessed senior leadership email by compromising a legacy test tenant that had no MFA enforced. The attacker leveraged a password spray against a non-production account, then pivoted through OAuth consent grants to reach production mailboxes. The identity chain — from dormant service principal to OAuth token to mailbox access — was technically "authorized" at every hop. No exploit was required. The access model permitted it.
These aren't exotic nation-state techniques. They're identity governance failures: orphaned accounts, over-permissioned service principals, stale OAuth grants, and access reviews that exist on paper but not in practice. Organizations that treat identity governance as a compliance checkbox rather than an operational security control are the ones that show up in breach disclosures.
For organizations operating under NIST 800-53, CMMC, or FedRAMP, identity governance isn't optional guidance — it maps directly to the AC (Access Control), IA (Identification and Authentication), and PS (Personnel Security) control families. The question isn't whether you need an identity governance program. It's whether yours would survive contact with an attacker who already has valid credentials.
The Joiner/Mover/Leaver Lifecycle
Identity governance starts with lifecycle management — the process of creating, modifying, and terminating digital identities as people enter, move through, and leave an organization.
Joiner: Day-One Access Without Drift
When a new employee, contractor, or partner joins, they need the right access on day one — not day three, and not "everything the last person in this role had." The joiner process provisions access based on role definitions:
- Create the identity in the authoritative directory and federate it through SSO
- Assign the role-based entitlement package — the minimum access their job function requires
- Issue phishing-resistant credentials (FIDO2 keys, CAC/PIV for federal)
- Record the provisioning event with the authorizing manager and business justification
- Set an initial access review date (30/60/90 days depending on risk tier)
The failure mode here is "cloning" — copying another user's access wholesale because it's faster than defining the right access. Cloning propagates access drift forward indefinitely. Every cloned account carries the accumulated exceptions of the source account, most of which were never formally approved.
Mover: The Hardest Problem in Identity
Role changes are where identity governance programs fail most visibly. When someone transfers from engineering to product management, the joiner process adds their new access. But the leaver process for the old role almost never fires. The result is entitlement accumulation — after three role changes, a user has the aggregate access of every position they've held.
The organizational incentive structure works against you here. Removing access creates friction: "I still need that to finish the transition." "I consult on that project occasionally." "My old team might need me to approve something." Every exception is locally reasonable and globally catastrophic. After two years of reasonable exceptions, you have users with god-mode access and no one who can explain why.
The fix is structural, not procedural. When a role change fires, the old role's entitlements move to a "sunset" state with a hard expiration (14-30 days). If the user doesn't access them during the sunset period, they're revoked automatically. If they do access them, a review is triggered with the new manager. This keeps access decisions visible without creating blanket "remove everything immediately" friction.
Leaver: Speed Kills (or Saves You)
Departure provisioning has one metric that matters: time to full revocation. Industry benchmarks for federated environments with SSO should target under one hour from HR termination event to disabled identity, revoked sessions, and deprovisioned application access.
The Okta breach chain illustrates why speed matters. If a compromised session token isn't revoked within the session lifetime, the attacker has access until it expires naturally. Organizations that revoke sessions reactively (after detecting compromise) rather than proactively (at the moment of termination) are always behind the attacker's operational tempo.
Critical leaver steps beyond disabling the account: revoke all active sessions and refresh tokens (not just the IdP session — every downstream application), rotate any shared secrets the user had access to, transfer ownership of shared resources, and preserve audit logs for the retention period. The account itself should remain in a disabled state for forensic purposes — don't delete it.
Access Reviews That Actually Work
Here is the contrarian position: access reviews are compliance theater in 90% of organizations. The reviewer sees 200 entitlements they don't understand, clicks "approve all" in under 60 seconds, and the audit record says the review was "completed." The organizations that get value from reviews are the ones that show the reviewer risk signals — unused access, anomalous patterns — not raw entitlement lists.
The compliance requirement is clear across frameworks:
| Framework | Requirement | Frequency |
|---|---|---|
| SOC 2 | CC6.2: Periodic review of access | Quarterly typical |
| ISO 27001 | A.5.18: Access rights (2022 Annex A) | At least annual |
| PCI DSS v4 | Req 7.2.4: Review all user accounts | Every 6 months |
| HIPAA | 164.308(a)(1)(ii)(D): Information system activity review | Risk-based |
| NIST 800-53 | AC-2(3): Periodic access review | Per org policy |
| FedRAMP | AC-2: Account management | At least annual |
But satisfying the control requirement and actually reducing risk are different things. Here's what separates effective reviews from rubber-stamp exercises:
Risk-Signal-Driven Reviews
Instead of presenting the reviewer with "User X has access to System Y — approve or revoke?", effective review interfaces present:
- Usage data: "User X has access to System Y but hasn't authenticated in 94 days"
- Peer comparison: "User X has 3 entitlements that no one else in their role has"
- Privilege level: "This entitlement grants write access to CUI — high-risk tier"
- Approval chain: "This access was granted by exception 18 months ago by a manager who has since departed"
When the reviewer sees "unused for 94 days, granted by exception, no peer has it," the revocation decision is obvious. When they see a bare entitlement name with no context, the rational default is "approve" — because revoking something you don't understand carries career risk while approving it carries none.
Frequency Based on Risk Tier
Not all access needs the same review cadence. Privileged admin accounts (domain admin, cloud root, database superuser) should be reviewed monthly or triggered by any change. Standard business application access (email, collaboration tools, project management) can follow a quarterly or semi-annual cadence. The mistake is applying a single annual review cycle to everything — it's too frequent for low-risk access (creating review fatigue) and too infrequent for high-risk access (leaving a 364-day window for misuse).
Automated Deprovisioning After Review Decisions
A review decision that doesn't result in actual access change is worse than no review at all — it creates a false sense of governance. When a reviewer marks an entitlement for revocation, the deprovisioning must execute automatically within a defined SLA (24 hours for standard access, 4 hours for privileged). Manual deprovisioning queues are where good review decisions go to die.
RBAC Implementation and the Role Explosion Problem
Role-Based Access Control maps job functions to entitlement packages. In theory, this produces clean, auditable, least-privilege access. In practice, organizations discover the role explosion problem within 18 months of any RBAC implementation.
It starts simply: "Engineer" gets access to the code repository, CI/CD pipeline, and development environments. Then someone needs production access for on-call. You create "Engineer — Production." Then someone needs access to the data warehouse for analytics. "Engineer — Analytics." Then a senior engineer needs both. "Senior Engineer — Production + Analytics." Multiply by departments, geographies, projects, and temporary assignments. Organizations with 500 employees end up with 1,200 roles, half of which have a single occupant.
Fixing Role Explosion
The sustainable RBAC model uses a layered approach:
Base roles define the minimum access for a job function — what every person in that title needs on day one. These are coarse-grained and stable over time.
Entitlement packages represent additional access bundles that can be granted and revoked independently of the base role. "On-call production access" is a package, not a role. It has its own approval workflow, its own review cadence, and its own expiration policy.
Just-in-time access handles the remaining edge cases. Instead of permanently granting production database access because someone needs it twice a month for incident response, grant it on-demand for a bounded time window with mandatory justification. The access exists only during the window. No standing privilege, no review required because there's nothing persistent to review.
This three-tier model (base role + packages + JIT) keeps the role count manageable while handling real-world complexity. The role count should stay proportional to your distinct job functions (tens to low hundreds), not your total entitlement surface (thousands).
Segregation of Duties
Certain access combinations create control-bypass risks that no amount of monitoring can compensate for:
- The person who approves purchase orders should not receive goods (procurement fraud)
- The person who writes code should not deploy to production without independent review (change management bypass)
- The person who creates user accounts should not approve their own access grants (privilege escalation)
- The person who administers audit logs should not approve their own actions (evidence tampering)
These aren't theoretical risks — they're the access patterns behind the majority of insider fraud cases. Identity governance platforms enforce SoD by maintaining a conflict matrix and blocking role combinations that violate it. When a legitimate business need requires an SoD exception (common in small organizations), the exception is formally documented, time-bounded, and subject to compensating controls (enhanced monitoring, dual-approval workflows).
For CMMC and NIST 800-171 environments handling Controlled Unclassified Information, SoD violations in the access control chain can be assessment findings. The assessor will look for evidence that conflicts are detected, prevented, or mitigated — not just that a policy document exists.
Compliance Mapping: Identity Controls Across Frameworks
Identity governance maps to controls across every major compliance framework. Organizations managing multiple frameworks — which is most federal contractors dealing with CMMC plus FedRAMP plus NIST 800-53 — can satisfy dozens of controls with a single well-implemented identity governance program.
The core control families:
- AC (Access Control): Account management, access enforcement, least privilege, separation of duties, session management
- IA (Identification and Authentication): Identifier management, authenticator management, authentication policies
- PS (Personnel Security): Personnel termination, personnel transfer, access agreements
- AU (Audit and Accountability): Audit events for access changes, audit review and reporting
A mature identity governance implementation satisfies 40-60 individual controls across a typical NIST 800-53 baseline. The key is generating evidence that maps cleanly: provisioning logs prove AC-2, review completion records prove AC-2(3), SoD enforcement logs prove AC-5, JIT access logs prove AC-6(1/2).
Continuous monitoring of identity controls — rather than point-in-time assessments — is where organizations move from "compliant on paper" to "operationally secure." Real-time metrics on mean-time-to-provision, mean-time-to-revoke, review completion rates, and SoD violation attempts give both security teams and auditors confidence that the controls are functioning, not just documented.
Key Takeaways
- Identity is the primary attack vector in modern breaches — Okta and Microsoft incidents prove that valid credentials without governance are worse than no access at all, because they create invisible exposure.
- The joiner/mover/leaver lifecycle determines your actual security posture. Movers are the hardest: entitlement accumulation from role changes is the #1 source of excessive access in mature organizations.
- Access reviews only reduce risk when they present risk signals to reviewers, not raw entitlement lists. Without context, rational reviewers will approve everything.
- RBAC implementations that don't account for role explosion end up with more roles than users. The fix is a layered model: base roles + entitlement packages + just-in-time access.
- Identity governance maps to 40-60 controls across NIST 800-53, CMMC, FedRAMP, SOC 2, and other frameworks — it's the single highest-leverage investment for multi-framework compliance.
Frequently Asked Questions
How does identity governance differ from identity and access management (IAM)?
IAM is the technical infrastructure — the identity provider, the SSO federation, the MFA enforcement, the directory. Identity governance is the policy and process layer on top: who should have what access, who approved it, is it still appropriate, and what happens when it isn't. You can have a technically sound IAM deployment (strong authentication, federated SSO, encrypted directories) and still have catastrophic identity governance gaps (orphaned accounts, no access reviews, no SoD enforcement). IAM answers "can this user authenticate?" Governance answers "should this user have this access?"
What's the right access review frequency?
It depends on the risk tier of the access being reviewed. Privileged accounts (admin, root, service accounts with broad permissions) warrant monthly reviews or event-triggered reviews. Standard business access can follow a quarterly or semi-annual cadence. The worst approach is a single annual review cycle applied to everything — it fatigues reviewers on low-risk access while leaving dangerous gaps on high-risk access. Match frequency to consequence: what's the blast radius if this access is misused for the entire review period?
How do you handle identity governance for service accounts and non-human identities?
Service accounts are where most identity governance programs have a blind spot. They don't have managers, they don't go through joiner/mover/leaver processes, and they accumulate privileges over years without review. The Microsoft breach exploited exactly this gap. Treat non-human identities with the same governance rigor as human ones: every service account needs an owner (a human accountable for its access), a defined purpose, an expiration date or mandatory annual revalidation, and credentials that rotate automatically. Service accounts with static credentials and no owner are your highest-risk identity governance gap.
How does vendor risk management intersect with identity governance?
Third-party access is an extension of your identity governance program. Every vendor with access to your environment represents an identity lifecycle you don't fully control — their employees join and leave on their schedule, not yours. The governance controls are: federated authentication (don't issue local credentials to vendors), scoped access with hard expiration, contractual obligations for timely deprovisioning on their side, and your own monitoring of vendor access patterns. The Okta breach chain started inside a vendor's support infrastructure — your identity governance boundary must extend to everywhere your identities are consumed.
Can identity governance be automated, or does it require manual oversight?
The provisioning and deprovisioning steps should be fully automated — triggered by authoritative HR events, executed within SLA, with no human in the loop for standard cases. Reviews require human judgment but should be augmented with analytics (usage data, peer comparison, risk scoring) so the human is making informed decisions rather than rubber-stamping. SoD enforcement should be preventive (block the conflicting assignment) rather than detective (flag it after the fact). The goal is human oversight at decision points and automation everywhere else.
How Advisedly Helps
Advisedly maps identity governance controls across 500+ compliance frameworks simultaneously, connecting your provisioning records, access review evidence, and RBAC documentation to every applicable control requirement without maintaining parallel evidence sets. The platform tracks joiner/mover/leaver events against framework timelines, flags review completion gaps before they become audit findings, and surfaces SoD conflicts at the role-assignment boundary rather than after the fact. For organizations managing CMMC, FedRAMP, and SOC 2 simultaneously, a single identity governance evidence stream satisfies controls across all three — no duplication, no drift between what you report and what you operate. Contact begin@advisedly.ai
<!-- LI hook: Your access reviews are compliance theater. Here's the fix. -->