Skip to content
Diagram showing OpenID Connect flow between Provider, Client, and User

oidc-provider

OpenID Certified™ OAuth 2.0 & OpenID Connect Authorization Server for Node.js. Implements 27 stable RFCs and OIDC specifications for enterprise-grade authentication and authorization.

Getting Started

Set up your OIDC provider from scratch — configuration basics, account integration, and framework mounting.

Quick Start →

Configuration

Deep-dive into adapters, claims, clients, features, interactions, tokens, cookies, JWKS, PKCE, and more.

Configuration →

Guides

Practical guides for user flows, custom grant types, middleware registration, proxy setup, and context access.

Guides →

Events

Complete reference of all events emitted by the provider for logging, monitoring, and custom integrations.

Events →

API Reference

Auto-generated TypeScript API docs for all oidc-provider types, interfaces, and classes.

API Reference →

Community

Join the discussion — ask questions, share guides, and connect with other users.

GitHub Discussions →

SpecificationDescriptionStatusReference
RFC 6749OAuth 2.0StableRFC 6749
OpenID Connect Core 1.0OpenID ConnectStableOIDC Core
OpenID Connect Discovery 1.0OIDC DiscoveryStableOIDC Discovery
RFC 8414Authorization Server MetadataStableRFC 8414
OpenID Connect Dynamic Client Registration 1.0Dynamic Client RegistrationStableOIDC DCR
RFC 7591OAuth 2.0 Dynamic Client Registration ProtocolStableRFC 7591
RFC 7592OAuth 2.0 Dynamic Client Registration ManagementStableRFC 7592
OpenID Connect RP-Initiated Logout 1.0RP-Initiated LogoutStableRP-Init Logout
OpenID Connect Back-Channel Logout 1.0Back-Channel LogoutStableBack-Channel Logout
RFC 7009OAuth 2.0 Token RevocationStableRFC 7009
RFC 7636Proof Key for Code Exchange (PKCE)StableRFC 7636
RFC 7662OAuth 2.0 Token IntrospectionStableRFC 7662
RFC 8252OAuth 2.0 for Native Apps BCP (AppAuth)StableRFC 8252
RFC 8628OAuth 2.0 Device Authorization Grant (Device Flow)StableRFC 8628
RFC 8705OAuth 2.0 Mutual TLS (mTLS)StableRFC 8705
RFC 8707OAuth 2.0 Resource IndicatorsStableRFC 8707
RFC 9101OAuth 2.0 JWT-Secured Authorization Request (JAR)StableRFC 9101
RFC 9126OAuth 2.0 Pushed Authorization Requests (PAR)StableRFC 9126
RFC 9207OAuth 2.0 Authorization Server Issuer IdentifierStableRFC 9207
RFC 9449OAuth 2.0 Demonstration of Proof-of-Possession (DPoP)StableRFC 9449
RFC 9701JWT Response for OAuth Token IntrospectionStableRFC 9701
FAPI 1.0 Security ProfileFAPI 1.0 - Part 2: AdvancedStableFAPI 1.0
FAPI 2.0 Security ProfileFAPI 2.0StableFAPI 2.0
FAPI 2.0 Message SigningFAPI 2.0 Message SigningStableFAPI 2.0 MS
JWT Secured Authorization Response Mode (JARM)JARMStableJARM
OpenID Connect CIBAClient Initiated Backchannel AuthenticationStableCIBA
OpenID Connect RP Metadata Choices 1.0RP Metadata ChoicesStableRP Metadata
FAPI-CIBAFAPI-CIBA - Implementers Draft 01ExperimentalFAPI-CIBA
OAuth 2.0 Attestation-Based Client AuthenticationAttestation-Based Client Authentication - Draft 06ExperimentalAttestation Auth
OAuth Client ID Metadata DocumentCIMD - Draft 01ExperimentalCIMD

Supported Access Token Formats:

OpenID Certified™

oidc-provider has been certified by the OpenID Foundation. It passes all conformance tests for the supported profiles, giving you confidence that the implementation is correct and spec-compliant.

All credit goes to @panva, author and maintainer of node-oidc-provider. The library, its features, and all upstream documentation are entirely his work. This site is an unofficial community resource that reorganizes that documentation for easier browsing.