Score SAML, OpenID Connect, OAuth 2.0, Kerberos and WS-Federation against your environment, compare auth flows, and fix eight Kerberos failure modes.
This federated identity architect scores five authentication protocols — SAML 2.0, OpenID Connect, OAuth 2.0, Kerberos and WS-Federation — against your actual environment, then shows you the authentication flows step by step and gives you an implementation checklist for whichever protocol wins. It also includes an eight-item Kerberos troubleshooting workbench with the diagnostic commands for each failure mode. Everything runs in your browser; no environment details are transmitted, and a PDF of the recommendation can be exported locally.
The problem it solves is that “which protocol should we use?” has no universal answer, and the internet is full of confident ones. The right choice depends on who your users are, how many applications you have, what identity provider you already run, which clouds you are in, and what compliance regime you sit under. The tool asks those questions and scores accordingly.
| Protocol | What it is | Best for |
|---|---|---|
| SAML 2.0 | XML-based federation standard | Enterprise SSO, legacy integration, government and FedRAMP environments |
| OpenID Connect | Identity layer on top of OAuth 2.0, JSON/REST | Modern web and mobile apps, B2C, API-driven architectures |
| OAuth 2.0 | Authorization framework — not authentication | API authorization, delegated access, microservices |
| Kerberos | Ticket-based network authentication | On-premises Windows environments and Active Directory |
| WS-Federation | Web services federation, Microsoft ecosystem | ADFS integration and older Microsoft estates |
SAML 2.0 is mature, exhaustively implemented across enterprise SaaS, and well understood by auditors. Its weaknesses are all consequences of XML: verbose assertions, awkward debugging, browser-redirect-based flows that suit mobile applications poorly, and signature validation with a long history of subtle implementation bugs. If your users are employees, your applications are enterprise SaaS with existing SAML connectors, and your identity provider is ADFS, Entra ID or Okta, SAML remains the pragmatic answer.
OpenID Connect is the modern default for anything new. It layers identity on OAuth 2.0, issues a signed JSON ID token, and provides discovery so a client can configure itself from a well-known URL. It suits mobile and single-page applications far better than SAML, and it is the natural choice for customer-facing (B2C) authentication.
OAuth 2.0 is the one most frequently misused. It is an authorization framework: it answers “may this client access this resource on this user’s behalf?” and says nothing reliable about who the user is. Using a bare OAuth access token as proof of identity is a genuine and well-documented vulnerability class. When you need identity, use OIDC — which is OAuth plus a properly defined identity layer. Use plain OAuth 2.0 for API authorization and delegated access.
Kerberos is excellent at what it does: mutual authentication with no password ever crossing the network, and very fast once a ticket-granting ticket is held. It also requires KDC infrastructure, is acutely sensitive to clock skew, and has essentially no story for mobile or cloud-native applications. In practice it stays as the on-premises Windows authentication layer while federation handles everything beyond the domain.
WS-Federation is legacy. It works well inside a Microsoft estate with ADFS, and OIDC is superseding it. Do not choose it for new work.
The scoring is nuanced, but the underlying reasoning is not complicated:
Most real environments end up running two or three of these simultaneously, and that is the correct outcome rather than a failure of consolidation: Kerberos inside the domain, SAML for existing SaaS, OIDC for anything new.
The same sign-in, expressed twice. SAML 2.0, SP-initiated:
1. User requests a protected resource at the Service Provider
2. SP redirects the browser to the IdP with a signed AuthnRequest
3. User presents credentials to the IdP
4. IdP authenticates the user
5. IdP POSTs a signed XML SAML Response to the SP's ACS URL
6. SP validates the assertion signature and grants access
OIDC authorization code flow:
1. User clicks "Sign In" in the client application
2. Client redirects to the authorization server's /authorize endpoint (scope=openid)
3. Authorization server presents a login prompt
4. User enters credentials and consents
5. Authorization server returns an authorization code via redirect
6. Client exchanges the code at the /token endpoint (back-channel)
7. Authorization server returns an ID Token (JWT) plus an Access Token
8. Client validates the ID Token and creates a session
The structural difference is step 6. SAML delivers the assertion through the browser in a single front-channel POST; OIDC delivers only a short-lived code through the browser and exchanges it for tokens over a direct back-channel call. That back-channel exchange — hardened further by PKCE, which binds the code to the client that requested it — is why OIDC is more comfortable in environments where the browser cannot be fully trusted, such as mobile and single-page applications.
Kerberos failures are famously opaque, but they cluster into a small number of causes. The tool walks through eight, each with the command that confirms it:
w32tm /query /status on Windows or ntpstat on Linux.Test-NetConnection <KDC> -Port 88 or nc -zv <KDC> 88.setspn -L <account> and find duplicates with setspn -X._kerberos._tcp.DOMAIN and _ldap._tcp.DOMAIN, and confirm forward and reverse records agree.klist -e; standardise on AES256 and remove RC4 only after confirming AES everywhere.klist to inspect, klist purge to clear.nltest /domain_trusts and nltest /sc_verify:DOMAIN.If you take one habit from that list, make it checking the clock first. Time skew is the single most common cause and the fastest to rule out.
The JWT decoder unpacks the ID and access tokens OIDC issues so you can inspect claims, expiry and signing algorithm. Kerberos SRV record problems are diagnosed with the DNS lookup tool, federation signing certificates with the X.509 certificate decoder, and failed authentication events with the SIEM query builder.
OAuth 2.0 is authorization — granting a client access to a resource. OIDC adds an authentication layer on top, issuing a signed ID token that states who the user is. Using a bare OAuth access token as proof of identity is a known vulnerability pattern; use OIDC when you need to know who someone is.
OIDC for anything new, particularly mobile, single-page and customer-facing applications. SAML when you are integrating enterprise SaaS that already supports it, or operating under a compliance regime with established SAML precedent. Both are secure when implemented correctly.
No. SAML 2.0 remains widely deployed and actively supported across enterprise SaaS, and will be for years. It is simply no longer the default choice for new development.
Not natively — it assumes a KDC and network topology that cloud applications do not have. The standard pattern is Kerberos on-premises with federation (SAML or OIDC) bridging to cloud services, often through a hybrid identity provider that trusts the on-premises directory.
Proof Key for Code Exchange binds an authorization code to the client that requested it, preventing a stolen code from being redeemed by anyone else. It is required for public clients (mobile and SPA) and recommended for all clients. Current guidance is to use the authorization code flow with PKCE everywhere and never the implicit flow.
A user authenticates to service A, which must then reach service B as that user. Without delegation configured, the credential cannot make the second hop and B rejects the request. Constrained delegation solves it while restricting which services A may impersonate to.
Kerberos tickets carry timestamps to prevent replay, and the default tolerance is five minutes. If a client, the KDC or the service drifts beyond that, authentication fails. Confirm NTP is running and synchronised on every domain member.
Only for existing ADFS or older Microsoft integrations that require it. It is being superseded by OIDC and is not a sensible choice for new work.
Yes, and most do. A common pattern is Kerberos for domain-joined resources, SAML for established SaaS, and OIDC for new internal and customer-facing applications, all fronted by a single identity provider so the user experience stays coherent.
No. Scoring, flow diagrams, the Kerberos checklist and the PDF export all run in your browser. Nothing you enter is transmitted or stored.
Federated identity is an authentication architecture that allows users to access multiple independent systems and organizations using a single set of credentials managed by a trusted identity provider (IdP). Instead of each application maintaining its own user database, federated identity delegates authentication to a central authority and establishes trust through cryptographic tokens.
This approach is the foundation of enterprise Single Sign-On (SSO), cross-organization collaboration, and consumer identity services like "Sign in with Google." Federated identity reduces password fatigue, centralizes security policy enforcement, and simplifies user provisioning across complex multi-application environments.
Federated identity relies on trust relationships between three parties:
| Protocol | Token Format | Primary Use Case | Typical Environment |
|---|---|---|---|
| SAML 2.0 | XML assertion | Enterprise SSO | Corporate applications, legacy systems |
| OpenID Connect | JWT (id_token) | Web and mobile SSO | Modern web apps, consumer services |
| OAuth 2.0 | Access token (JWT or opaque) | API authorization | API access, third-party integrations |
| WS-Federation | XML assertion | Microsoft ecosystem | SharePoint, ADFS, legacy Microsoft apps |
| SCIM | JSON | User provisioning | Automated account creation/deprovisioning |
Federated identity allows users to authenticate once with their home organization (Identity Provider) and access resources across multiple partner organizations (Service Providers) without separate credentials. This enables Single Sign-On (SSO) across organizational boundaries while each organization maintains control of their user identities.
SAML 2.0 uses XML-based assertions and is designed for enterprise SSO between organizations. OpenID Connect (OIDC) is built on OAuth 2.0, uses JSON/JWT tokens, and is designed for modern web and mobile applications. SAML is more mature in enterprise settings; OIDC is simpler and better for consumer-facing applications.
Kerberos uses a trusted third party (Key Distribution Center) with two components: Authentication Server (AS) and Ticket Granting Server (TGS). Users authenticate once to get a Ticket Granting Ticket (TGT), then use the TGT to request service tickets for specific resources. All communication uses symmetric encryption with time-limited tickets.
OAuth 2.0 is an authorization framework that grants applications limited access to user resources without sharing credentials. OpenID Connect adds an authentication layer on top of OAuth 2.0, providing user identity information via ID tokens. OAuth 2.0 answers "what can you access?" while OIDC also answers "who are you?"
Common Kerberos issues include: time synchronization errors (clocks must be within 5 minutes), KDC unreachability (DNS/network issues), expired or corrupted ticket caches, Service Principal Name (SPN) misconfiguration, and encryption type mismatches. This tool includes a Kerberos troubleshooter that walks through these common problems.
Comprehensive OAuth 2.0 and OpenID Connect debugging tool. Decode JWT tokens, generate PKCE challenges, test authorization flows, validate redirect URIs, and troubleshoot common OAuth errors - all in your browser.
Decode and inspect JWT tokens instantly. View header, payload, and verify signatures with security validation.
Visualize False Acceptance Rate (FAR) and False Rejection Rate (FRR) curves with interactive sensitivity controls. Compare biometric modalities including fingerprint, iris, facial recognition, voice, and palm vein to find the optimal Crossover Error Rate (CER).