Это многочисленные технологии и ключевые слова, используемые для единого входа в службы Microsoft.
Может ли кто-нибудь объяснить ADFS, WIF, WS Federation, SAML и STS (службу маркеров безопасности), включая, где и когда каждый из них используется.
Это многочисленные технологии и ключевые слова, используемые для единого входа в службы Microsoft.
Может ли кто-нибудь объяснить ADFS, WIF, WS Federation, SAML и STS (службу маркеров безопасности), включая, где и когда каждый из них используется.
С точки зрения большой картины:
Предположим, что приложение на базе браузера ASP.NET требует проверки подлинности и авторизации.
Приложение может катиться самостоятельно или может передать его на аутсорсинг.
WIF - это библиотека .NET, которая позволяет ASP.NET реализовать этот аутсорсинг.
Он говорит о STS ( ADFS - это экземпляр STS), который аутентифицируется в репозитории удостоверений личности и предоставляет информацию авторизации в форме претензий. STS предоставляет набор подписанных доверенных заявок.
Протокол, используемый между WIF и ADFS, WS-Federation.
Если STS была основана на Java (например, Ping Identity или OpenAM), тогда WIF будет использовать протокол SAML для связи. ADFS также поддерживает SAML для включения федерации.
(Федерация, например, позволяет пользователю в Java-ориентированной компании A получить доступ к приложению ASP.NET в .NET-ориентированной компании B путем аутентификации против репозитория идентификации. Компания A и компания B доверяют друг другу в смысле федерации.)
ADFS (службы федерации Active Directory) - готовая служба маркеров безопасности (STS), созданная Microsoft и построенная на основе Windows Identity Foundation (WIF). Использует AD для аутентификации. Может использоваться в активных (SOAP-сервисах) или пассивных (веб-сайтах) сценариях и поддерживает токены SAML, WS-Federation, WS-Trust и SAML-Protocol. Он может использоваться как поставщик удостоверений (против AD) или как поставщик федерации.
http://technet.microsoft.com/en-us/library/adfs2(v=ws.10).aspx
WIF (Windows Identity Foundation) - библиотека .NET, используемая для аутентификации на основе утверждений в приложениях .NET и полагающихся сторонах. Он также может использоваться в качестве клиента WS-Trust и для сборки пользовательских STS.
WS-Federation - протокол, используемый полагающимися сторонами и STS для согласования маркера безопасности. Приложение запрашивает маркер безопасности из STS с использованием WS Federation, а STS возвращает (большую часть времени) токен безопасности SAML обратно в приложение с использованием протокола WS Federation. Обычно это происходит через HTTP (GET и POST и перенаправления). Сравните это с WS-Trust, который полностью основан на веб-сервисах.
Токены SAML (язык разметки безопасности) - это просто формат XML, используемый для токенов безопасности, которые обычно фиксируют информацию пользователя (претензии) и другие соответствующие данные, связанные с безопасностью (подписи, маркер-эмитент и т.д.). Маркер используется приложением для аутентификации пользователей и управления приложением (например, авторизация). Знаки безопасности SAML подписаны на целостность и, возможно, зашифрованы, поэтому только RP и STS могут видеть его содержимое. На веб-сайтах ASP.NET с использованием WIF токен по умолчанию шифруется и помещается в файлы cookie, но это можно изменить.
http://en.wikipedia.org/wiki/Security_Assertion_Markup_Language
STS (Служба токенов безопасности). Как описано выше, STS является брокером, который находится между приложением-получателем и пользователем. STS является эмитентом жетонов безопасности. "Эмитент" часто является синонимом STS. STS настраиваются в двух ролях: в качестве поставщиков удостоверений (IdP), когда они аутентифицируют пользователей или как поставщиков федерации (FP), когда они сидят в середине цепи доверия и действуют как "полагающиеся стороны" для других ИДФ. IdPs нужен способ аутентификации пользователей. Некоторые (например, ADFS) используют Active Directory, другие используют специальные базы данных, такие как членство в SQL Server (не ADFS). Если пользователь правильно аутентифицируется, STS выдаст маркер безопасности.
http://msdn.microsoft.com/en-us/library/ff650503.aspx
http://docs.oasis-open.org/ws-sx/ws-trust/v1.4/os/ws-trust-1.4-spec-os.html#_Toc212615442
Надеюсь, это поможет. Есть много понятий и частей, которые нужно понимать при аутентификации на основе утверждений. Чтобы получить полное понимание, вы должны проверить Руководство по идентификации и контролю доступа на основе утверждений.
Это сообщение предназначено для уточнения токенов SAML, поддерживаемых в ADFS 2.0, и протокола SAML, не поддерживаемого до ADFS 3.0, версии ADFS в Windows Server 2012 R2
1) Протокол SAML не поддерживается до ADFS 3.0
2). Приложения WIF на основе .NET 4.5 требуют использования протокола WS-Fed и в настоящее время не поддерживают протокол SAML-протокола
3) Токены SAML основаны на XML. Знаки SAML поддерживаются в ADFS 2.0 и предыдущих версиях. ADFS 1.0. 1.1. и 2.0 поддерживают только токены SAML, а не протокол
4) Если вы используете WIF, требуется WS-Fed (протокол), поэтому вы можете сделать следующее:
Протокол SAML < --- > ADFS < ---- > WS-FED < ---- > WIF (.net 4.5)
Из Wiki:
• ADFS 1.0 - Windows Server 2003 R2 (дополнительная загрузка)
• ADFS 1.1 - Windows Server 2008 и Windows Server 2008 R2.
• ADFS 2.0 - Windows Server 2008 и Windows Server 2008 R2 (скачать от Microsoft.com)
• ADFS 2.1 - Windows Server 2012.
• ADFS 3.0 - Windows Server 2012 R2.