L IntegrAuth Lab

🖥️ You are the app now

This little page is a relying party — an app that lets people sign in with another service. Here that service is IntegrAuth Lab's own OpenID Connect provider. Click the button and you'll run a real authorization code + PKCE login, then watch this page validate the ID token it receives against the Lab's public keys — all in your browser, with no client secret (a public client proves itself with PKCE).

Sign in to the Demo app

No setup, no invite — it uses a first-party public client the Lab seeds for everyone.

Try the hardened front channel

What's about to happen

  1. 1. Redirect to consent. We send you to the Lab's /authorize with a PKCE challenge, a random state and a nonce.
  2. 2. Approve. You (already signed in) approve the scopes — the Lab returns a single-use, PKCE-bound code to /demo/callback.
  3. 3. Exchange the code. This page POSTs the code + the PKCE verifier to /oidc/token — no secret — and gets an access token + a signed ID token.
  4. 4. Validate the ID token. We fetch the Lab's JWKS and check the signature, iss, aud, exp and our nonce — then call /oidc/userinfo.

Learn the flow: the auth-code flow, PKCE, validating a JWT.