В чем основное отличие между JWT (Json Web Token) и SAML? Пожалуйста, предложите мне любой пример с безопасностью spring. Спасибо заранее.
Разница между JWT и SAML?
Ответ 1
Оба SAML и JWT - это форматы токенов безопасности, которые не зависят от какого-либо языка программирования. SAML - это более старый формат и основан на XML. Он обычно используется в протоколах, таких как SAML-P, WS-Trust и WS-Federation (хотя и не обязательно).
токены JWT (JSON Web Token) основаны на JSON и используются в новых протоколах аутентификации и авторизации, таких как OpenID Connect и OAuth 2.0.
Ответ 2
Дополнительная информация состоит в том, что SAML - это протокол и формат токена, но JWT - единственный формат токена.
Ответ 3
Оба используются для обмена данными аутентификации и авторизации между сторонами, но в другом формате. SAML - это язык разметки (например, XML), а JWT - это JSON.
SAML (Е Д ssertion М arkup л anguage) является открытым стандартом для обмена данными аутентификации и авторизации между сторонами, в частности, между МВУ (Id сущность P rovider) и ИП (С е р Р rovider), и это тождество протоколы используется в корпоративных развертываниях.
- IdP (Id entity P rovider): аутентифицирует пользователей и предоставляет провайдерам услуг подтверждение аутентификации в случае успеха;
- SP (С й р р rovider): зависит от поставщика удостоверений для аутентификации пользователей.
JWT (J SON W eb T oken) - это открытый стандарт (RFC 7519), который определяет компактный и автономный способ безопасной передачи информации между сторонами в виде объекта JSON. Эта информация может быть проверена и надежна, потому что она имеет цифровую подпись. JWT могут быть подписаны с использованием секретного (с помощью алгоритма HMAC) или пары открытого/секретного ключей с использованием RSA.
Единственный наиболее важный случай использования SAML - это единый вход в веб-браузер (единый вход, т.е. Вход в систему один раз и получение токена без необходимости входа в другие службы). Единый вход в систему относительно легко осуществить в домене безопасности (например, с помощью файлов cookie), но расширение единого входа через домены безопасности является более сложным и привело к распространению несовместимых запатентованных технологий. Профиль единого входа SAML Web Browser был задан и стандартизирован для обеспечения совместимости. (Для сравнения, более поздний протокол OpenID Connect является альтернативным подходом к SSO веб-браузера.) Идентификационный токен, обычно называемый
id_token
вid_token
кода, представляет собой JSON Web Token (JWT), который содержит информацию профиля пользователя.