oauth2
Articles tagged with oauth2.

What Is PKCE? Proof Key for Code Exchange Explained
PKCE protects the OAuth 2.0 authorization code flow from stolen codes. Follow one S256 exchange with real values, and learn…
Keycloak Client Authentication Without Secrets: Signed JWT (private_key_jwt)
Replace Keycloak client secrets with Signed JWT (private_key_jwt): the client signs a short assertion with its own key. Setup, code,…
What Is a Bearer Token? How Bearer Authentication Works
A bearer token grants access to whoever holds it. How to send it in the Authorization header, opaque vs JWT…
What Is a JWT Token? Structure, Claims and Signatures
A JWT token is a signed Base64URL string with a header, payload and signature. What each part holds, which claims…
What Is a Nonce in Security? Nonce vs State vs PKCE
A nonce is a number used once, a unique value that stops replay. Learn how nonces are generated and how…
Access Token vs Refresh Token: Key Differences
Access tokens authorize API calls briefly; refresh tokens only obtain new tokens. How they differ, and what Gitea 28.1.0 fixed…
ID Token vs Access Token: Differences and How to Validate
An ID token tells your app who signed in; an access token tells an API what the caller may do.…
Stateless MCP: What the 2026-07-28 Spec Changes for Tool Builders
MCP went stateless in the 2026-07-28 spec: no initialize handshake, no Mcp-Session-Id. Here is what changes for MCP servers and…
Keycloak MCP Server 401: Fixing the Audience Claim
MCP clients get a 401 from Keycloak-protected servers because of a wrong aud claim. Here is the RFC 8707 cause,…

Keycloak with Spring Boot in Docker, Then Managed
Run Keycloak in Docker with a Spring Boot app, then move the same app to managed Keycloak without changing code.…
Stay ahead on identity & security
Get tutorials, product updates, and Keycloak tips delivered to your inbox.