Проблемы ACS — единый вход, поток удостоверений и авторизация
Обновлено: 19 июня 2015 г.
Область применения: Azure
Сводка
В этом разделе описываются общие проблемы, связанные с единым входом (SSO), передачей удостоверений, авторизацией в распределенных облачных приложениях, а также предлагаются варианты их решений.
Сценарий
Рассмотрим следующую схему для канонического сценария распределенного приложения.
Ниже приводятся ключевые характеристики этого сценария.
Конечный пользователь может иметь существующие удостоверения, управляемые отраслевыми поставщиками удостоверений, такими как Windows Live ID (учетная запись Майкрософт), Google, Yahoo!, Facebook или enterprise Active Directory.
Конечный пользователь взаимодействует с системой, для которой требуется проверка подлинности и авторизация через веб-браузер или полнофункциональный клиент.
Конечный пользователь взаимодействует с системой, для которой требуется проверка подлинности и авторизация через полнофункциональный клиент, запущенный на рабочем столе, смартфоне или в браузере (например, Silverlight или JavaScript).
Веб-приложение может взаимодействовать с подчиненными веб-службами, для которых требуется проверка подлинности и авторизация.
Сложности
Этот сценарий связан с несколькими общими проблемами безопасности. Рассмотрим следующий пример.
Как реализовать внешнюю проверку подлинности для веб-приложений?
Как реализовать внешнюю проверку подлинности для веб-служб?
Как использовать учетные данные Интернета с различными приложениями?
Как использовать корпоративные учетные данные с различными приложениями?
Как обеспечить передачу контекста безопасности через физические уровни?
Как преобразовать удостоверение пользователя для дальнейшей детализованной авторизации на основе утверждений?
Как обеспечить взаимодействие с другими пользователями?
Как защитить процесс обмена данными?
Как автоматизировать процесс управления?
Подход к решению
Microsoft Azure Active Directory контроль доступа (также известный как служба контроль доступа или ACS) предоставляет решение этих проблем. Используя открытые стандарты и протоколы, такие как WS-Federation, WS-Trust, SAML, OAuth 2.0 и SWT ACS, позволяют пользователям создавать облачные и локальные приложения, которые могут безопасно взаимодействовать с несколькими поставщиками удостоверений, как показано в следующем примере:
Дополнительные сведения об архитектуре ACS и ключевых компонентах см. в статье "Архитектура ACS".