SAML Assertion Decoder Online
Turn Base64 (or DEFLATE-compressed) SAML responses from ADFS, Okta, or Keycloak into readable XML to debug SSO failures.
What is SAML Assertion Decoder?
SAML (Security Assertion Markup Language) is the XML format behind enterprise Single Sign-On (SSO). When you log in to a company app through ADFS, Okta, Entra ID, or Keycloak, the identity system sends the app a SAML assertion — a signed document stating who you are (email, name, roles) and when that proof expires. Two parties are always involved: the Identity Provider (IdP) is the system that verifies your login (ADFS, Okta, Entra ID); the Service Provider (SP) is the app that consumes the assertion.
Zero-Server Tool Data Guarantee
All decoding and parsing happens entirely in your browser. SAML assertions are never sent to any server for processing. The only optional network request is the metadata URL you explicitly ask the tool to fetch, which is proxied through the site's own server purely to bypass CORS blocks — nothing is stored or logged.
How to Use
Paste SAML Content
Input your SAMLResponse or raw XML. You can toggle Base64 decoding and DEFLATE inflation depending on the binding used.
Configure Options
Check 'Input is Base64' for standard POST bindings, or 'Deflated' for Redirect bindings commonly used in SSO flows.
Inspect Results
View the decoded XML and a summary of key fields like Issuer, NameID, and user attributes automatically extracted from the assertion.
Import IdP Metadata
Switch to the IdP Metadata tab, paste an EntityDescriptor XML or its URL, and get entityID, SSO/SLO endpoints, NameIDFormat, and signing certificates.
Common Use Cases
SSO Debugging
Paste a SAMLResponse from your browser's developer tools to quickly inspect what the IdP is sending to your service provider.
Attribute Mapping
View all user attributes in the assertion to verify correct attribute mapping between your IdP and application.
Integration Testing
Decode assertions during SAML integration setup to confirm the user identifier (NameID), issuer URL, and recipient endpoint.
Security Auditing
Inspect raw SAML XML during a security review to check for missing signatures, weak conditions, or overly broad audience restrictions.
Federation Setup
Import the IdP's EntityDescriptor metadata to copy the exact entityID, SSO endpoint, NameIDFormat, and signing certificate into your SP configuration.
Expiry Auditing
Watch the live validity indicator to confirm an assertion is currently valid, not yet valid, or expired — essential when debugging clock-skew and replay issues.
Certificate Rotation
Parse IdP metadata to compare signing-certificate fingerprints before and after a certificate rollover in ADFS, Okta, or Entra ID.
Implementation Examples
<saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"ID="_abc123" IssueInstant="2024-01-15T09:30:00Z" Version="2.0"><saml:Issuer>https://idp.example.com</saml:Issuer><saml:Subject><saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">user@example.com</saml:NameID></saml:Subject><saml:Conditions NotBefore="2024-01-15T09:25:00Z"NotOnOrAfter="2024-01-15T09:35:00Z"><saml:AudienceRestriction><saml:Audience>https://myapp.example.com</saml:Audience></saml:AudienceRestriction></saml:Conditions><saml:AttributeStatement><saml:Attribute Name="role"><saml:AttributeValue>admin</saml:AttributeValue></saml:Attribute></saml:AttributeStatement></saml:Assertion>
SAML vs OIDC
| Feature | SAML 2.0 | OpenID Connect |
|---|---|---|
| Data format | XML | JSON / JWT |
| Transport | HTTP POST or Redirect | HTTP (REST APIs) |
| Primary use | Enterprise SSO | Web & mobile apps |
| Token format | XML assertion | JWT (ID Token) |
| Complexity | High (XML signing, certs) | Lower (simpler crypto) |
| Mobile support | Poor (browser redirects) | Native / OAuth2 flows |
| Adoption trend | Legacy / enterprise | Modern / growing |
| Discovery | Metadata XML files | Well-known endpoints |
Production Best Practices & Security
Frequently Asked Questions
In your Identity Provider admin console (ADFS or Okta), locate the SAML response for the service provider. Copy the Base64-encoded assertion from your browser's developer tools network tab — look for the SAMLResponse parameter in the POST form data.
Paste it into the tool. Leave the 'Deflated' checkbox unchecked for HTTP POST binding, or check it for HTTP Redirect binding.
The tool will decode the XML and display the assertion structure, attribute statements, and authentication context for inspection.