Декодер SAML

Декодирование SAML-утверждений из Base64-кодированного XML. Вся обработка выполняется в вашем браузере для максимальной безопасности и конфиденциальности.

Автоопределение сжатия Полный разбор XML 100% на стороне клиента

Как использовать декодер SAML

1

Вставьте данные SAML

Скопируйте Base64-кодированный SAML Response или Assertion из трассировки SAML или сетевого запроса

2

Автодекодирование

Инструмент автоматически декодирует Base64 и определяет сжатие deflate для раскрытия XML

3

Просмотр деталей

Просмотрите декодированный XML и извлечённые поля, включая Issuer, NameID и атрибуты

Что такое SAML?

SAML (Security Assertion Markup Language) — это открытый стандарт на основе XML для обмена данными аутентификации и авторизации между сторонами, в частности между поставщиком удостоверений (IdP) и поставщиком услуг (SP). Утверждения SAML обычно кодируются в Base64 и могут быть сжаты deflate при передаче через привязки HTTP-перенаправления.

SSO аутентификация

SAML обеспечивает единый вход, позволяя пользователям пройти аутентификацию один раз и получить доступ к нескольким сервисам

Утверждения на основе XML

SAML использует XML-утверждения для передачи заявлений аутентификации и авторизации между сторонами

Безопасная привязка

SAML поддерживает привязки HTTP Redirect, POST и Artifact для безопасного обмена токенами

Часто задаваемые вопросы

Какие форматы SAML поддерживаются?

Инструмент поддерживает Base64-кодированные SAML Response и Assertion XML, обычно встречающиеся в SAML-перенаправлениях и POST-привязках. Он также автоматически определяет и распаковывает deflate-сжатые SAML-запросы.

Безопасны ли мои данные SAML?

Да. Вся обработка выполняется полностью в вашем браузере. Ваши токены SAML никогда не отправляются на какой-либо сервер. Никакие данные не покидают ваше устройство.

Что означает сжатие deflate?

SAML-запросы, отправляемые через HTTP-перенаправление, часто сжимаются deflate перед кодированием Base64 для уменьшения длины URL. Этот инструмент автоматически определяет и распаковывает такие данные.

В чём разница между SAML-запросом и SAML-ответом?

Запрос — это samlp:AuthnRequest, который поставщик услуг отправляет, чтобы попросить поставщика идентификационных данных аутентифицировать пользователя; ответ — это samlp:Response, который приходит обратно и содержит saml:Assertion с утверждением аутентификации и атрибутами. Оба передаются в URL-кодированном виде (Redirect binding) или внутри HTML-формы POST (POST binding). Этот инструмент декодирует любое из направлений.

Что такое RelayState в SAML-сообщении?

Непрозрачная строка, которую SP добавляет к запросу и которую IdP должен вернуть без изменений вместе с ответом — обычно это URL для перенаправления после входа. Спецификация SAML bindings рекомендует держать её в пределах 80 байт, и для IdP она не несёт никакого смысла. Если SSO приводит не на ту страницу, первое подозрение — потерянный или повреждённый RelayState.

Как определить, что данные SAML сжаты Deflate?

В HTTP-Redirect binding XML сначала сжимается raw-Deflate, затем кодируется в Base64, затем URL-кодируется — три обязательных шага согласно спецификации. Передайте этому инструменту URL-кодированное значение: если оно разворачивается в разметку, начинающуюся с <, значит данные были сжаты; если оно уже начинается с <?xml или <saml — не были. Сообщения в POST binding — это просто Base64 без Deflate.

Что вызывает самые распространённые ошибки SAML?

Рассинхронизация часов — проверка подписи завершается ошибкой, когда часы SP и IdP расходятся больше, чем допускается; несоответствие аудитории — audienceRestriction в утверждении не содержит entity ID поставщика услуг; и истёкшие ответы (NotOnOrAfter). Также часто встречаются: отсутствующий RelayState и неподписанные утверждения там, где SP требует подпись. Декодированные поля, которые показывает этот инструмент, позволяют проверить каждую из этих причин напрямую.

Можно ли декодировать подписанное SAML-утверждение без закрытого ключа?

Да — декодирование не является проверкой. XML утверждения может прочитать кто угодно; подпись внутри обеспечивает целостность, а не конфиденциальность. Без публичного сертификата IdP нельзя доказать, что утверждение подлинно и не было изменено. Обращайтесь с любым декодированным содержимым осторожно: утверждения часто содержат адреса электронной почты, группы и права доступа.

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}