Subscribe to the Non-Human & AI Identity Journal

What do security teams get wrong about OIDC token validation?

Teams often validate only the signature and expiration, then stop. A secure implementation also checks issuer, audience, nonce, and session binding, and it refreshes signing keys by key identifier. Without those checks, a valid token can still be accepted in the wrong context.

Why Security Teams Miss the Real Validation Problem

OIDC token validation failures usually come from treating a token as proof of identity in isolation, rather than proof of identity within a specific issuer, audience, session, and runtime context. That mistake matters because stolen or replayed tokens can be technically valid and still be dangerous. The same pattern shows up in NHI incidents such as the Salesloft OAuth token breach, where access material was abused outside the intended trust boundary.

Security teams often stop after signature and expiry checks because those are easy to automate and easy to explain. Current guidance from NIST Cybersecurity Framework 2.0 still pushes organisations toward stronger identity assurance and continuous verification, but OIDC implementations frequently lag behind that intent. The practical gap is that a valid JWT is not automatically a valid request authorization decision.

In practice, many teams discover weak token handling only after an abused token has already been replayed through a trusted integration.

How Token Validation Should Work in Practice

A secure OIDC flow validates more than cryptography. Signature verification proves the token was issued by a trusted signing key, but the application also needs to confirm the token was meant for this service, in this session, and for this exact authentication event. That means checking issuer, audience, nonce where applicable, token lifetime, and whether the current key matches the token’s key identifier. The Guide to the Secret Sprawl Challenge is useful background because leaked or over-retained credentials often become the path that makes token misuse possible.

Operationally, teams should treat validation as a chain of control, not a single gate:

  • Verify the issuer exactly, not by substring or loose matching.
  • Match the audience to the intended relying party or API.
  • Bind the token to the current session or transaction when the protocol supports it.
  • Reject tokens that arrive outside their expected TTL, even if signature checks pass.
  • Refresh signing keys by key ID and retire stale keys quickly.

This is especially important for agents, service accounts, and SaaS integrations, where tokens may be replayed by another workflow with broader privileges than the original requester. The State of Non-Human Identity Security shows how quickly visibility and control gaps appear once OAuth apps and machine identities spread across the estate, and those same gaps amplify OIDC mistakes. These controls tend to break down in federated SaaS estates with multiple issuers because each application team implements slightly different claim checks and key-rotation behaviour.

Where Validation Guidance Breaks Down

Tighter token validation often increases integration overhead, requiring organisations to balance security against developer friction and legacy compatibility. That tradeoff is real, especially when older services cannot enforce nonce checks, session binding, or strict audience restrictions without refactoring. Best practice is evolving, and there is no universal standard for every OIDC deployment shape.

Edge cases appear most often in machine-to-machine traffic, multi-tenant SaaS, and brokered identity setups. In those environments, teams sometimes accept a token because the signature is good, then assume downstream policy will catch misuse. That assumption is weak when an attacker can replay a token into a different API, a different tenant, or a different workflow. The Internet Archive breach is a reminder that once trust material is exposed, downstream controls rarely compensate for bad validation at the edge.

Two practical rules help reduce mistakes: first, separate authentication from authorization and re-evaluate both at request time; second, treat high-risk tokens as disposable and short-lived rather than reusable session artifacts. Organisations that rely on long-lived refresh paths or broad audience definitions are usually optimising for convenience, not resilience.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

OWASP Non-Human Identity Top 10 address the attack and risk surface, while NIST CSF 2.0 and NIST AI RMF set the governance and control requirements practitioners need to meet.

Framework Control / Reference Relevance
OWASP Non-Human Identity Top 10 NHI-02 Token replay and weak audience checks are core non-human identity validation risks.
NIST CSF 2.0 PR.AC-1 Strong identity proofing and access enforcement depend on correct token validation.
NIST AI RMF AI and automation workflows depend on trustworthy authentication and context-aware control.

Use AI RMF governance to require runtime identity checks for automated and agentic services.