AuthTailor 1.0.0 is out (8 November 2026): the SAML & OIDC tracer as an extension of its own – free, no account, no server. What’s inside → +43 664 1964199Contact →

Tokens and SAML

Every recognised message gets a card in the result. Instead of Base64 and XML you see who issued what for whom, whether the signature is valid and how long it lasts.

Cards
one per message
JWT signature
with the issuer’s keys
SAML signature
RSA, RSA-PSS, ECDSA, SHA-1 to SHA-512
Network
only the GET for the keys, on click

The card of a JWT

The pictures show the access token of the made-up app “Acme Orders”. At the top of the card are the kind, issuer, audience and user, below them the Token anatomy.

Card Access token (JWT) with chain of trust, ID card of the user Erika Muster, bar header payload signature and claims in groups
The token anatomy of an access token.
  1. Chain of trust: Issuer → seal with algorithm and key ID → For whom (audience and authorised client).
  2. The ID card: who is logged in, with Scopes and Roles.
  3. The bar shows how large Header, Payload and Signature are. The signature itself is hidden on purpose – it is what makes the token usable.
  4. The claims in groups – Who, Issuer & receiver, Time, Security, Access – each with a short explanation. Times are shown relative to now.

Below the anatomy follow the card’s Checks, the Fields and Decoded with the raw content. Values such as signatures and secrets are masked there.

Check the signature

Without keys the seal only shows Signed. With Load keys from … AuthTailor fetches the issuer’s public keys once (discovery → jwks_uri). Only this GET goes out – nothing from your input.

Line 1 key from login.acme.example with the link remove and the chain of trust with the seal Signature valid
After loading the keys: signature valid.
  1. How many keys from which host are loaded. remove forgets them again.
  2. The seal: Signature valid, Signature invalid or Key missing in the JWKS – the last often points to a key rollover.
  3. The issuer (iss).
  4. The audience (aud) and the authorised client (azp).

If the JWKS is already in the input – in a HAR, for example – AuthTailor checks without loading. Other seals: Unsigned (alg none), Shared secret (HMAC) and Encrypted.

Validity

Time axis with expires in 59:54, lifetime 60 min and a marker for now
Validity on the time axis.
  1. The countdown: expires in …, expired … ago or valid in …, plus the lifetime.
  2. The marker for now on the axis from issued (iat) through valid from (nbf) to valid until (exp).

The Clock tolerance from the expected values applies here too: a token that only becomes valid in 30 seconds is fine with a tolerance of 2 minutes. For a recording, AuthTailor measures the times at the moment of the request.

A SAML flow

For SAML the flow shows the way from the AuthnRequest to the identity provider up to the response to the app’s ACS URL. The picture shows a recording of the made-up “Acme Portal” with the IdP idp.acme.example.

Verdict All clear, security rating with four green areas and the login flow with AuthnRequest and SAML Response
A SAML flow, started by the service provider.
  1. The verdict – here All clear.
  2. Step 1: Request login (SAML AuthnRequest) by redirect to the IdP.
  3. Step 2: Assertion to the app (SAML Response) by POST to the ACS URL.
  4. Across the flow – for example Response belongs to the AuthnRequest: InResponseTo matches the request’s ID.

The card of a SAML Response

Card SAML Response with binding HTTP-POST, chain of trust with Signature valid, ID card with groups and nested building blocks Response, Status, Assertion, Subject and Conditions
The message anatomy of a SAML Response.
  1. The binding the message came by – here HTTP-POST.
  2. The Chain of trust: issuer, seal with algorithm and certificate, receiver with Recipient.
  3. The ID card with NameID and Groups from the attributes.
  4. The building blocks nested as in the XML: <Response>, <Status>, <Assertion> with <Subject>, <Conditions>, <AuthnStatement> and <Attribute>. A tick means checked and fine; signed blocks carry a seal.

AuthTailor checks the signature cryptographically with the certificate from the message, using its own XML canonicalisation (exclusive and inclusive). It recognises attack patterns such as signature wrapping, duplicate IDs, comments in the NameID, DTDs and transforms. DTDs are never resolved, transforms never executed.

Certificates

Section Certificates with the certificate Acme Demo IdP (fictitious), self-signed, RSA 2048, sha256WithRSA, expiry date and SHA-256 fingerprint
The signing certificate from the message.
  1. The certificate with name, self-signed, key type and length, signature algorithm, subject and expiry date.
  2. The SHA-256 fingerprint. Compare it with the one from your IdP’s metadata – or enter that one in the expected values and AuthTailor compares for you.

AuthTailor also warns about certificates that will expire soon.

See also

Sources on this page

The superscript numbers in the text point here. Tap one to see the source right where it is used; all sources of this website are listed on one page.

  1. 1

    Visual anatomy of JWT and SAML ↑Product · AuthTailor product documentation, README, Auth Trace · checked on 2026-11-08

  2. 2

    Signatures really checked ↑Product · AuthTailor product documentation, README and changelog 1.0.0 · checked on 2026-11-08

  3. 3

    Attack patterns and leaks ↑Product · AuthTailor product documentation, README and changelog 1.0.0 · checked on 2026-11-08

  4. 4

    The one request: public keys on click ↑Product · AuthTailor product documentation, privacy policy of the extension · checked on 2026-11-08

Frequently asked

Short answers.

Does AuthTailor send my token to a server to check the signature?
No. On your click AuthTailor only fetches the issuer’s public keys. The check runs in the panel and the token never leaves the browser.
Why does the seal only show “Signed”?
For a JWT the keys are missing: click “Load keys from …” or paste the JWKS too. For SAML the message has no certificate or the algorithm is not supported.
Can AuthTailor read encrypted assertions?
No. AuthTailor shows encrypted assertions as “Encrypted” – without the receiver’s private key the content cannot be read.

Your question isn’t here? Talk to me: +43 664 1964199 office@clouddna.at Get in touch

Contact

Login stuck? Talk to us.

AuthTailor is free. If you need help – setting up single sign-on on SAP BTP, with a stubborn error or for a workshop with your team – get in touch. I reply within one working day, personally.

Martin KochManaging Director, CloudDNAI read every request myself and reply personally.