В чем разница между WS-Trust, OpenID и SAML Passive? - PullRequest
7 голосов
/ 25 августа 2010

Кажется, что Microsoft ADFSv2 поддерживает WS-Trust и SAML Passive, но стек WIF, на котором он построен, не поддерживает SAML.

В чем разница между WS-Trust и SAML-P? Имеют ли они одинаковые уязвимости в безопасности, если да, то чем они являются?

Примечание: здесь есть похожий, но другой вопрос:

SAML против OAuth

Ответы [ 3 ]

7 голосов
/ 01 сентября 2010

Полагаю, вы имеете в виду [недавно выпущенную] ADFS v2?

Да, ADFS v2 поддерживает WS-Trust (и WS-Federation) и SAML2 пассивные, а WIF поддерживает только WS-Trust (и WS-Federation), а не SAML2 (ни пассивный, ни активный).

WS-Federation использует WS-Trust для выполнения [основанной на браузере] пассивной федерации и во многих отношениях аналогична пассивной SAML2 - и во многихспособов нет.Существенным отличием WS-Federation от пассивного SAML2 является то, что WS-Federation v1.1 (новая версия, поддерживаемая ADFS v2) поддерживает автоматическое обнаружение метаданных.Вам нужно только предоставить конечную точку метаданных (URL) в WS-Federation, тогда как в SAML вы должны обмениваться документами метаданных некоторым выбранным методом (флешка, почта и т. Д.).

Я не делаюзнать о любых фактических уязвимостях безопасности в любом протоколе, но подход к обмену метаданными может обсуждаться вечно.Подход WS-Federation значительно упрощает многие вещи, такие как откат сертификатов, автоматическое обновление, автоматическое предоставление новых членов в федерации «бесплатно» и т. Д. Однако процедура «ручного» обмена в SAML2 может по крайней мерев теории быть более безопасным.

Относительно того, почему поддержка SAML не включена в WIF, я могу только предполагать.Приличным предположением может быть то, что кто-то хочет, чтобы сайты, использующие WIF, объединялись с ADFS, а не напрямую с каким-либо другим [сторонним] IdP: -)

3 голосов
/ 10 ноября 2015

Обновленный и исправленный ответ за 2015 год

  • OpenID-Connect (или OIDC ) - новый протокол единого входа
    • OpenID версии 3, обратно не совместим,
    • Построен по технологии OAuth
    • Использует JWT (для токенов, а также других веб-технологий и определений JSON)
  • WS-Federation (или WS-Fed ) - старый протокол единого входа
    • использует SAML для своих токенов

Определения:

  • JWT - определение JSON для токенов безопасности (в OAuth и OIDC)
    • Произносится как слово " jot ".
  • SAML - XML-схема и определения токенов безопасности (в WS-Fed)

OAuth

  • OAuth - это набор спецификаций для передачи авторизации от запрашивающего приложения (клиента) службе авторизации.
    • Разрешенное использование дано в " scope "
    • Область действия состоит из набора средств безопасности " требований " и необходимых " ресурсов "
    • Авторизованные области возвращаются в JWT Маркер ресурса
    • Жетоны могут быть возвращены несколькими способами. Наиболее распространенными являются:
      • Токен возвращен напрямую: в неявный поток - используется для приложений на основе браузера (javascript)
      • Токен возвращается в два этапа после получения « Код доступа » - используется для вызовов на основе сервера (REST или веб-API).
    • В некоторых случаях пользователю-пользователю показывается пользовательский интерфейс для согласия на авторизацию всех или некоторых запрошенных «ресурсов».
    • Токены могут содержать фактическую информацию или могут быть ссылкой на сервер, содержащий информацию.

OIDC (Open ID Connect)

  • Запускается по запросу OAth scope с утверждением типа OpenID-Connect
  • Поставщик OP - OIDC - это сервер OAuth, соответствующий протоколу OIDC
  • Identity Token возвращается OP - поставщиком OIDC.
    • Жетоны идентификации содержат информацию (претензии) о пользователе
    • В некоторых случаях пользователю будет показан пользовательский интерфейс для авторизации части или всей запрашиваемой информации и ресурсов.

См. Статья Тревиса Спенсера об OAuth и OIDC - ее легко прочитать.

Если в этом нет исправлений, отметьте это как ответ. Спасибо.

3 голосов
/ 19 сентября 2014

От Академия единого входа , очень простая разница,

Многие люди не понимают различий между SAML, OpenID и OAuth, но на самом деле все очень просто.Хотя есть некоторые совпадения, здесь есть очень простой способ различения трех.

OpenID – single sign-on for consumers
SAML – single sign-on for enterprise users
OAuth – API authorization between applications
...