Поставщик удостоверений выпускает утверждение Assertion (субъект, условия, например NotBefore, NotOnOrAfter и AudienceRestriction, заявление об аутентификации и атрибуты), подписывает его с помощью XML Signature и доставляет в Response через браузер, обычно с привязкой HTTP-POST. Поставщик услуг проверяет подпись по сертификату IdP из метаданных, а также аудиторию, временное окно, значение InResponseTo и URL назначения.
Большинство серьёзных ошибок в SAML — это ошибки обработки XML: обёртывание подписи, или signature wrapping (проверяющая сторона проверяет один подписанный элемент, а приложение читает другой, неподписанный), усечение идентификаторов имён из-за комментариев в них (2018 год, несколько библиотек), раскрытие внешних сущностей XML и подписи, которые охватывают только часть ответа. Используйте поддерживаемую библиотеку и никогда не проверяйте подписи универсальным кодом на XPath.
Для новых приложений OpenID Connect обычно проще, но корпоративные клиенты часто требуют SAML, и многие продукты поддерживают оба протокола. Инспектор SAML локально декодирует и проверяет утверждения.