Open Source Free

Identity & Access Management
Masterclass

A practical, protocol-first guide to modern identity. Learn OAuth 2.0, OpenID Connect, JWT, and enterprise identity patterns — grounded in RFCs, not vendor docs.

👁 Verify Explicitly

Authenticate & authorize every request using all available data points.

🔒 Least Privilege

Limit access to only what is needed — scopes, claims, and roles enforced at every layer.

🚫 Assume Breach

Design systems as if attackers are already inside. Short-lived tokens. Signed assertions.

Key Concepts at a Glance

AuthN vs AuthZ

Authentication (AuthN) — proving who you are. Credentials, MFA, passkeys. Output: a verified identity.

Authorization (AuthZ) — proving what you can do. Scopes, roles, permissions. Output: access granted or denied.

OAuth 2.0 vs OIDC

OAuth 2.0 — a delegated authorization framework (RFC 6749). Tells you what is allowed, not who the user is.

OpenID Connect — identity layer built on OAuth 2.0. Adds the ID Token so you know who authenticated.

Access Token vs ID Token

Access Token — for the Resource Server (API). Presented on every API call. Short-lived.

ID Token — for the Client app. Proves authentication happened. Validated once at login. Never sent to APIs.

Front Channel vs Back Channel

Front Channel — browser URL redirects. Visible. Used for authorization requests. Never carry sensitive tokens.

Back Channel — server-to-server HTTPS POST. Secure. Used for token exchange.

Run the Lab Environment

Clone the repo and start the local lab in 3 commands:

git clone https://github.com/sepand/AuthMatrix.git
cd AuthMatrix
npm install && npm run dev

Then open http://localhost:3000 — the full app runs locally with simulated auth.