Настраиваемый поставщик утверждений Azure для SharePoint Project, часть 1

Исходная статья опубликована в субботу, 11 февраля 2012 г.

Привет всем, прошло уже некоторое время с тех пор, как я добавил новый контент об утверждениях SAML, поэтом я решил вернуться и написать на ту тему еще что-нибудь такое, что связано с некоторыми из моих любимых тем – SharePoint, SAML, настраиваемые поставщики утверждений, набор CASI Kit и Azure. Эта статья является первой в серии статей, в которых я предоставлю доказательство концепции, дополненное исходным кодом, который читатели могут свободно использовать по своему усмотрению. В этой статье будет показано создание настраиваемого поставщика утверждений для SharePoint, использующего Windows Azure в качестве источника данных. На высоком уровне реализация будет выглядеть примерно следующим образом:

  • Пользователи будут входить на сайт, используя федерацию SAML с ACS. На стороне ACS я настрою несколько различных поставщиков удостоверений — скорее всего, Google, Yahoo и Facebook. Поэтому пользователи будут входить, например, используя свои адреса электронной почты Google, а после проверки подлинности они будут перенаправлены на сайт.
  • Я буду использовать запросы Azure для маршрутизации сведений о пользователях, содержащихся в утверждениях, и заполнения хранилища таблиц Azure
  • Я буду использовать приложение WCF для интерфейсных запросов данных, находящихся в хранилище таблиц Azure, а также для выгрузки новых элементов в очередь. Мы создадим доверительное отношение между сайтом SharePoint и этим приложением WCF, чтобы управлять доступом и предоставлением данных и возможностей.
  • На стороне SharePoint я создам настраиваемый поставщик утверждений. Он будет получать список поддерживаемых мной типов утверждений, а также выполнит поиск с помощью средства выбора людей и разрешение имен. Внутри он будет использовать набор CASI Kit для взаимодействия с Windows Azure.

После этого мы получим законченную сквозную интегрированную среду SharePoint-облако. Надеюсь, что вам понравится результат.

В части 2 я рассмотрел все компоненты, работающие в облаке, — классы данных, используемые для работы с хранилищем таблиц и запросами Azure, рабочую роль для чтения элементов из запросов и заполнения хранилища таблиц, а также интерфейс WCF, позволяющий клиентскому приложению создавать новые элементы в запросе и выполнять все стандартные действия SharePoint по поиску людей — предоставлять список поддерживаемых типов запросов, выполнять поиск значений утверждений и разрешать утверждения.

В части 3 я создаю все компоненты, используемые в ферме SharePoint. В их число входит настраиваемый компонент, основанный на наборе CASI, который управляет всем взаимодействием между SharePoint и Azure. Кроме того, будет использована настраиваемая веб-часть, захватывающая сведения о новых пользователях и вставляющая их в очередь Azure. Наконец, предусмотрен настраиваемый поставщик утверждений, взаимодействующий с хранилищем таблиц Azure с помощью WCF через настраиваемый компонент набора CASI Kit, чтобы разрешить использование элемента управления для ввода и функций выбора людей.

Это локализованная запись блога. Исходная статья доступна по адресу The Azure Custom Claim Provider for SharePoint Project Part 1