Blog

Practical writing on OAuth2, OpenID Connect, passkeys, and token security — the problems you hit at 2am, not the happy path.

Subscribe via RSS

·3 min read

OAuth 2.0 vs OpenID Connect: What the Difference Actually Is

OAuth2 is authorization, OIDC is authentication built on top of it. Here's what that means concretely, and why using an access token to identify a user is a real vulnerability.

oauth2oidcauthenticationprotocols

·3 min read

What Actually Breaks When You Skip PKCE

PKCE is not just for mobile apps anymore. Here's the concrete attack it prevents, why the client secret doesn't save you, and why the spec now recommends it for every OAuth2 client.

pkceoauth2securityspa

·3 min read

redirect_uri_mismatch: Every Reason It Happens

The error says the URI doesn't match a registered value. Matching is exact string comparison, which makes the causes narrow and mostly invisible — trailing slashes, ports, casing, and encoding.

oauth2debuggingredirect-uriconfiguration

·4 min read

Where to Store Tokens in a Browser: An Honest Comparison

localStorage, cookies, memory, or a backend-for-frontend. Every option trades XSS exposure against CSRF exposure and complexity — here's the actual tradeoff rather than the usual dogma.

spasecuritytokensxss

·4 min read

Rotating JWKS Signing Keys Without Locking Everyone Out

Key rotation fails when the new key starts signing before consumers have seen it. The fix is an overlap window sized by your cache TTL and token lifetime — here's the sequence.

jwksjwtkey-rotationoperations

Stop debugging auth by hand

AuthAction handles token issuance, rotation, JWKS, passkeys, and enterprise SSO — so most of what we write about here stops being your problem.

Free, unlimited users. No credit card required.