ADAM (Active Directory Application Mode В) Нестандартные роли провайдера
Введение к стандарту ADAM роли провайдера
ADAM (Active Directory Application Mode о) стала все чаще для компаний, которые хотят осуществить легкий вес протокол каталога для использования в их среде SharePoint. С Адамом, настройка безопасности на основе ролей общих принципов, поскольку это является расширяемой архитектурой, которая обеспечивает преимущества Active Directory без управления и осуществления накладных расходов, а также позволяет концепцию обязательного роли в операциях, которые очень полезны функцию, так как за рамки действующего как роль и сохранять пользовательские данные, например ADAM может стать двигателем для запуска смешанных, комплексных SharePoint окружающей среды и различных приложений. Поставщик AzMan роль ограничивает пользователей, которые можно интегрировать с LDAP Pluggable поставщик тем, чтобы решить материальные личности Windows (она должна быть учетная запись домена), которое, конечно, является проблемой для людей, которые хотят использовать ADAM только пользователям. С повышением поддержки Адама в SharePoint 2007, требования от клиентов стало еще более распространенным и для некоторых, отсутствие поддержки роли стала причиной для беспокойства.
Необходимость в роли провайдера
В других статьях на сайте (в частности, здесь) появились подробные разъяснения, которые идут в использовании AvtiveDirectoryMembershipProvider в среде SharePoint и как сделать так, и это поставщик действительно невероятной Сентрал при осуществлении ADAM в вашей среде SharePoint для авторизации пользователя. Однако, необходимые для реализации пользовательского поставщика, что будет поддерживать те же функции тип роль, которая доступна с другими поставщиками на тех же пользователей ADAM, позволяющая обойти ограничения, которые поддерживают только определению ролей фактические учетные записи домена.
Поставщик, который поставляется с экземпляром по умолчанию Адама AuthorizationStoreRoleProvider, который пару с функциональностью, которая предоставляется на основании выданного разрешения менеджера. Фактические связи происходит с Primary Interop (microsoft.interop.security.azroles.dll), которая является объектом COM (обсуждается в ближайшее время) импортируется из библиотеки типов AZROLESLib. Поддерживаются функции принадлежности АДАМ с последними релизами Адам и хранению принципов без разрешения в Windows тождества Работает хорошо.
Функциональные роли провайдера
Существуют различные слои поддерживаемых функций, которые существуют в поставщика по умолчанию роль, которую распространяются в пользовательский поставщик, который доступен здесь. Примечательно, что AddUsersToRoles, CreateRole, DeleteRole, FindUsersInRole, GetAllRoles, GetRolesForUser, GetUsersInRole, IsUserInRole, RemoveUsersFromRoles, RoleExists, а также другие функции более низкого уровня, как получить имена приложений. Большинство методов, которые находятся в роли поставщика ADAM должна походить на другие провайдеры, которые должны быть построены в целях поддержки транзакций базы данных другого происхождения, будь это Oracle, плоского текста, DB2 или Informix, поставщик ADAM роль будет иметь несколько характеристиками, которые являются одинаковыми.
Есть несколько важных лучших концепций, которые должны быть рассмотрены с поставщиком роль ADAM. Во-первых, принять концепцию имя приложения во внимание, в данном случае это делается с помощью ссылки на применение ADAM который, в свою очередь предоставляют методы, которые необходимы для того, чтобы говорить вернуться обратно между поставщиком и роль ADAM бэкэнда хранилища, Это важно для того, чтобы позволить сегрегации точек данных, предоставляемых название приложения, чтобы несколько векторов могут существовать. Потому что несколько приложений могут существовать, которые используются провайдером, атрибут может быть выражена determinably поставщиком функциональность. Если в файлах конфигурации название приложения не задано, то имя приложения по умолчанию как это определено. NET Framework. Это может быть продлен при освоении концепции ADAM областей применения, которые позволяют вам развернутая еще дальше.
Поскольку область намного меньше общего, чем область, позволяет увидеть краткий обзор о получении имя приложения.

Первое, что мы должны делать это инициализировать новый объект AuthorizationStore вызывая новые AzAuthorizationStoreClass (). После, мы должны получить значения, что мы требуем от конфигурации разделов (соединение строк уточнил, что), а затем вызвать OpernApplication () из microsoft.interop.security.azroles.dll и вернуть имя приложения.
Во-первых, есть понятие о том, что поставщик будет наследовать от базового класса RoleProvider, которая вытекает из самой имен System.Web.Security. В отличие от других понятий на сайте, такие как использование Фасады моделей (моделей завода, которые разрабатывают общий интерфейс для обеспечения определенного набора функций, см. здесь) для транзакционной взаимодействия поставщиков, поставщик ADAM роли чуть более конкретным, то есть в отличие от База данных завода модели, которые являются абстрактными методами внес на самом деле конкретный по своей природе.
Роль поставщики довольно легко писать и выполнять, поскольку они, как правило, только запечатанный или абстрактные классы, а также параметры массируют, очень упрощенно, они роли имен, и пользователи, которые связаны с этими именами роль. Есть несколько методов, которые всегда должны быть реализованы и другие, хотя и могут быть рассмотрены дополнительно, тем не менее, очень важны.

В качестве примера, давайте рассмотрим наиболее очевидные методы, создание ролей. Это делается с помощью CreateRole методы, которые просто создаст новую роль в бэкэнд хранилище. Есть, конечно, ряд условий, которые должны быть проверены перед подключением к хранилища, что Адам предусматривает прежде чем вы фактически создаете новую роль, прежде чем выполнить совершения действия. Первый заключается в изучении условий незаконных характер, а вторая является то, что имя роли во-первых, не существует. Проверкой названием уже существует, может быть достигнута лишь переборе доступны ролей, а затем решить вопрос о roleNames, которые вернулись совпадают, которые передаются в качестве параметра:

Вторым условием является, чтобы проверить, есть ли недопустимые символы, которые находятся в роли имя. Это можно сделать, если делать заявления и использовании IndexOf чтобы рассказать ли принят в строку символов, действительно в роли имя. Единственное, что технически незаконными с ролью поставщика фактически запятой, однако если у вас есть стандарты, которые необходимо реализовать для того, чтобы они соответствовали требованиям имя роли, вы можете использовать тот же тип техники.

После выполнения условий, настало время что вы реально можете добавить ту роль, которую вы хотите.
Методы, которые необходимы как вы можете видеть довольно просты и легко осуществить, хотя эта статья не буду детально их все, некоторые центральные концепции, которые должны быть закрыты. 
Конфигурация элементов
Как и с другими поставщиками, которые осуществляются для SharePoint окружающей среды, одной из наиболее важных изменений, которые вы сделаете конфигурацию элементов для веб-приложений. Это осуществляется в двух разных местах, строки соединения элементов, с тем, что соединение LDAP может быть сделано и роль менеджера раздел, который будет указан поставщик тип, ссылка на строки подключения Настройка и применение имя, поскольку он поможет определить области для бизнес-приложениями.
Первый из них заключается в настройке конфигурации строку, которая будет определять соединения, которые вносятся в хранилище данных ADAM.
- <ConnectionStrings>
- ConnectionString =
- "LDAP: / / ADAM.sharepointsecurity.com / OU = Example, DC = sharepointsecurity, DC = COM" />
Второе это для того, чтобы Role Manager, установить по умолчанию поставщика к поставщику роли Адама, а затем установить имя приложения в конфигурацию элементов. Имя типа является поставщиком пользовательские имя роли, в этом случае ARB.ADAM.RoleProvider.
- <RoleManager включена = "defaultProvider истинный" = "directoryProvider">
- <поставщиками>
- <Открытый />
- <Добавить Name = "Тип ADAMRoleProvider" = "connectionStringName ARB.ADAM.RoleProvider" = "ApplicationName ADAMStoreConnection" = "SharePoint" />
Комментариев нет »
Комментариев пока нет.
RSS-канал для комментариев на эту должность. TrackBack URL






























