В Microsoft принято решение заменить систему аутентификации SharePoint Server. Ожидается, что платформа, предназначенная для организации совместной работы, станет первым крупным программным продуктом корпорации, в котором будет опробована модель идентификации на основе заявок (claims-based identity).
Цель заключается в том, чтобы интегрировать в SharePoint модель аутентификации, совместимую со всеми корпоративными системами идентификации, включая Active Directory, каталоги на базе LDAPv3, базы данных, адаптированные к особенностям конкретных приложений, и новые модели идентификации, ориентированные на пользователя, — LiveID, OpenID, а также системы InfoCard, и в первую очередь Microsoft CardSpace и Novell Digital Me.
Разработчики SharePoint откажутся от строгой системы аутентификации, которая имеется у продукта сегодня, в пользу фильтрации по пользовательским признакам, содержащимся в заявках, например по возрасту или членству в той или иной группе. Получить доступ к среде SharePoint и системам, интегрированным с данной средой, смогут только люди, прошедшие соответствующую процедуру контроля.
Заявки можно формировать динамически, путем сбора информации о пользователях и подтверждения существующих заявок в доверенном источнике в процессе входа пользователя в среду SharePoint.
По словам старшего менеджера Microsoft Office SharePoint Server Венки Веерарагавана, в Microsoft сделали ставку на подход, основанный на механизме заявок, потому что эта система обладает необходимой гибкостью и специально спроектирована для идентификации в неоднородных средах: «Это позволило нам, с одной стороны, делать инвестиции в SharePoint, а с другой — обеспечить совместимость со множеством систем с учетом того, что все они связаны друг с другом в рамках так называемого пространства Metasystem. Мы хотели бы и дальше повышать ценность продукта SharePoint для наших клиентов, не тратя время на индивидуальную интеграцию с каждой отдельно взятой системой идентификации. Ведь все это требует дополнительных ресурсов».
На конференции Digital ID World Веерарагаван постарался более подробно осветить деятельность Microsoft в этом направлении. Заявки представляют собой набор утверждений, идентифицирующих пользователя и содержащих некоторую дополнительную информацию. Системы используют заявки для принятия решения о том, кому предоставить доступ, кому разрешено извлекать информацию и кто имеет право завершать транзакции.
В реальном мире заявка может выглядеть так же просто, как кредитная карта, подтверждающая, что ее владелец обладает необходимыми привилегиями для проведения безопасной транзакции. Вместе с тем у продавца сохраняется право принять или отклонить эту заявку.
Концепция заявок, которая является составной частью модели Microsoft Metasystem, предназначенной для построения архитектуры распределенной идентификации, базируется на протоколах WS-Federation, WS-Trust и Security Assertion Markup Language (SAML). Модель Metasystem поддерживает развивающуюся технологию Security Token Service, и с помощью нее Microsoft осуществляет управление процедурой обмена заявками.
В качестве «преобразователей заявок» используются существующие технологии каталогов, метакаталогов, протокол Kerberos и центры сертификации. Они добавляют к заявке необходимые данные и проверяют содержащуюся в ней информацию. Представители Microsoft надеются, что архитектура заявок, которую можно выстраивать на основе технологий, доступных сегодня, придет на смену системам идентификации, базирующимся на единственной точке соответствия, которая, как правило, представляет собой каталог с информацией о пользователях.
По словам Веерарагавана, в Microsoft «глубоко погрузились» в процесс перевода SharePoint на модель на основе заявок. Однако функционал следующей версии SharePoint еще не опубликован, поэтому трудно сказать, когда конкретно модель заявок найдет свое воплощение в программном обеспечении.
Архитектор системы идентификации Microsoft Ким Кэмерон, участвовший в выработке концепции Metasystem, полагает, что переход отрасли на идентификацию на базе заявок произойдет в ближайшие полтора-два года.
Модель на основе заявок включает в себя три компонента: доверяющая сторона, которой заявки нужны для того, чтобы решить, что делать дальше; поставщик идентичности, распространяющий заявки; пользователь, который должен определить, какую информацию о себе предоставить.
Заявки могут содержать статические сведения: дату рождения, информацию об участии в сообществах, о вхождении в состав тех или иных групп или производные заявки, содержащие какие-то общие утверждения, например, о том, что пользователю уже исполнился 21 год. Сюда же относятся и метазаявки о способах проверки информации — например, о персональной регистрации или порядке выпуска заявки.
По словам Веерарагавана, программное обеспечение SharePoint будет применять заявки для выполнения трех видов операций: безопасного обмена запрашиваемой идентификационной информацией между машинами в рамках SharePoint и системами, совместимыми с SharePoint; предоставления специфичных прикладных концепций, например ролей в системе безопасности SharePoint, с тем чтобы приложения имели возможность пополнять пользовательские заявки и помогать SharePoint принимать решения об их авторизации; согласованного обмена информацией с многочисленными поставщиками средств аутентификации.
Сегодня SharePoint Server 2007 использует механизм аутентификации на основе сервиса каталогов Active Directory, с помощью которого осуществляется обмен информацией между машинами и системами. Существующая система идентификации SharePoint не позволяет приложениям добавлять дополнительные заявки к профилю пользователя.
Система на основе заявок обеспечивает дополнительную гибкость разработки и поддержки полномочных источников пользовательских данных, но вместе с тем она требует и более сложной доверительной модели.
По мнению специалистов, переход от единого периметра безопасности и полномочного источника пользовательских данных к распределенным заявкам для идентификации пользователя, контроля доступа и платежей, а также персонализации услуг повлечет за собой дополнительные трудности при установлении между компаниями уровней доверия друг с другом, с поставщиками заявок и при управлении рисками, которые присущи отношениям подобного рода.
Сегодня приложения, как правило, извлекают пользовательские данные из каталога, чтобы определить права доступа к сетевым сервисам.
Модель с активным источником данных не только позволяет распространять заявки, которые используются в самых разных местах, но и обеспечивает дополнительную эффективность, упрощая интеграцию механизмов идентификации в процесс разработки приложений, уменьшая нагрузку на каталоги, создавая условия для гибкого определения пользователей и их прав и вынесения механизмов идентификации за рамки корпоративной сети.
По словам Кэмерона, новая архитектура открывает путь для распространения заявок, но не является критерием истины. Модель поддерживает механизм вето, благодаря которому пользователь или поставщик механизма идентификации может отвергнуть обмен заявками. Этому механизму отводится важная роль в обеспечении безопасности системы.