If your APIs serve clients from multiple identity providers (IdPs), (for example, employees using Okta, B2B partners using Azure AD, or legacy systems on an in-house IdP), the OpenID Connect (OIDC) plugin can act as a federated authentication broker at the gateway layer. In this setup, backends don’t need per-IdP validation logic. Kong Gateway centralizes auth policy and forwards only the verified identity context upstream.
The OIDC plugin supports two approaches for multi-IdP authentication, both using JWT access token (bearer) auth. Clients authenticate against their respective IdPs and present the resulting bearer token to Kong Gateway:
| How it works | Validates tokens from multiple issuers against their JWKS endpoints. Backends receive the original, unmodified token. | Exchanges incoming tokens for a canonical token from one trusted target issuer. Backends only ever see tokens from that issuer. |
| When to use | Token formats are consistent across IdPs. Backends can accept tokens from different issuers. | Backends must trust a single issuer. Token formats differ across IdPs. You need downscoping, normalization, or cross-domain federation. |
| IdP requirements | No special grant needed. | IdPs must support RFC 8693 token exchange. |
| Min version | Any | 3.14 |
| Key config parameters |
config.issuers_allowed, config.extra_jwks_uris
|
config.token_exchange.subject_token_issuers
|