Learn IAM & security protocols by stepping through them

Each protocol is an interactive walkthrough: click through every message in the flow, inspect the real inputs and outputs, and decode the tokens and payloads exchanged at each step.

Authentication

OpenID Connect (OIDC)

Token-based

A thin identity layer on top of OAuth 2.0. Adds an ID token (a signed JWT) so the client learns *who* the user is, not just *what* it may access. The basis of modern 'Sign in with…' buttons.

Authorization Code (with ID Token)

SAML 2.0

Federation / SSO

Security Assertion Markup Language: an XML-based standard for browser single sign-on across security domains. A Service Provider delegates authentication to an Identity Provider, which returns a signed SAML assertion vouching for the user — the user's password never reaches the Service Provider.

Web Browser SSO (SP-initiated)

Kerberos v5

Network

A symmetric-key single sign-on protocol for networks. A trusted Key Distribution Center (KDC) issues time-limited, encrypted tickets so clients can prove their identity to services without ever resending the password over the wire.

Ticket-Granting Authentication (AS / TGS / AP)

WebAuthn / FIDO2

Passwordless

The W3C Web Authentication API and its FIDO2 underpinnings. An authenticator creates an origin-bound public-key credential (a passkey) during a registration ceremony, then proves possession of the private key during an authentication ceremony — giving phishing-resistant login with no shared secret on the server to steal.

Passkey Ceremonies (Registration & Authentication)

SCIM 2.0

Provisioning

System for Cross-domain Identity Management: a REST+JSON standard for provisioning users and groups across domains. An identity source (the SCIM client — an IdP or HR system) pushes the joiner-mover-leaver lifecycle into an application (the SCIM service provider) through a fixed resource model exposed at /Users and /Groups, so accounts are created, updated, and deactivated automatically instead of by hand.

User Provisioning (joiner-mover-leaver)

Authorization

Workload Identity