IDENTITY FEDERATED OPEN‑SOURCE

Federated OpenID Connect.

Sits in front of LDAP, SAML, GitHub, Google and more — your apps only ever speak OIDC.

CNCF Sandbox project

Why Dex?

A single authentication layer for your entire platform. Integrate any identity provider through OpenID Connect — without touching your application code.

// integrate

One protocol to rule them all

Every service speaks OIDC to Dex. Add upstream providers later without redeploying apps, reconfiguring clients, or rewriting auth code.

// cloud-native

Built for Kubernetes

Lightweight binary, official Helm chart, minimal configuration. Runs alongside your workloads without drama.

// production

Standards, not surprises

OIDC and OAuth2 all the way down. Battle-tested across organizations of every size, audited, and actively maintained.

// federation

Any upstream you need

LDAP, SAML, GitHub, Google, GitLab, Microsoft — and more. Apps stay OIDC-only while Dex handles the mess upstream.

Supported identity providers

First-class connectors for the most common identity providers. Pick one — or wire several together.

Where teams ship Dex

Four patterns we see most often in the wild.

// platform

Unified platform auth

Integrate your services with Dex once. Add LDAP, SAML or OIDC providers later without touching a single application.

// bundled

Ship as a dependency

Lightweight enough to bundle next to your application. Your platform instantly supports auth via dozens of providers.

// kubernetes

Kubernetes SSO

Seamless single sign-on for the dashboard, internal tools, and the kubectl flow — one OIDC endpoint to trust.

// local-dev

Development & testing

Built-in mock connector lets you authenticate locally during development without provisioning real identities.

How Dex compares

Dex is one of many OIDC providers in the ecosystem. Here's where it intentionally stops, and where you'd reach for something else.

vs Keycloak

No JVM, no database required

Keycloak is a heavy Java application that requires a backing database. Dex is a single static Go binary; storage is pluggable and optional.

vs Ory Hydra

Login flow and connectors included

Hydra is a headless OAuth2/OIDC server: it redirects the user to a login app you write, which then calls Hydra's admin API to accept consent. Dex ships the login UI and upstream connectors (LDAP, SAML, GitHub, OIDC) in one process.

vs Authelia / OAuth2 Proxy

Protocol provider, not a gateway

Both sit at the HTTP layer and protect upstream routes via ForwardAuth headers — they're reverse-proxy companions. Dex is a full OIDC issuer; any standards-compliant client runs the authorization-code flow against it directly.

vs Zitadel

Protocol adapter, not a data plane

Zitadel is an event-sourced IAM platform — it owns users, organisations, projects and audit logs on CockroachDB. Dex owns no user state at all: it takes an upstream identity source (LDAP, GitHub, SAML) and re-exposes it as OIDC.

vs Authentik

Federates upstream, doesn't replace it

Authentik is a Python/Django application with its own user store, flows engine and admin UI. Dex has no user store — authentication is delegated to whatever IdP you already run, and Dex translates the response into standard OIDC claims.

vs Cognito / GCP Identity

Runs on your infrastructure

Managed IAM binds your auth path to one cloud's APIs, billing and outage surface. Dex runs as a Kubernetes deployment, a systemd unit or a container on any substrate. User data and audit logs stay inside your network.