Как интегрировать Active Directory в приложение .NET с помощью DDD?

Как вы интегрируете объекты Active Directory (пользователи, группы и т. д.) в свое приложение DDD .NET? Как выглядят ваши репозитории и как вы обрабатываете сеансы LDAP, транзакции и единицы работы? Обратите внимание, что я говорю не о простых сценариях аутентификации/авторизации, а о том, что объекты AD являются частью базовой модели домена вашего приложения.

Я работаю над приложением, которое выполняет инициализацию/деинициализацию пользователей AD, и мне любопытно, что другие люди делают для переноса объектов AD в свое приложение DDD. Я предполагаю, что вы не таскаете объект DirectoryEntry по всему приложению, но я не нашел хороших инструментов типа ORM для объектов LDAP (может быть, OLM — сопоставление объектов и LDAP?).

EDIT: дополнительная справочная информация по этому вопросу находится в этом сообщении на форуме из проекта Sharp Architecture.


person David Archer    schedule 02.04.2009    source источник


Ответы (1)


Я делаю что-то подобное, на самом деле. Не та же цель, а факт использования DDD для создания приложения, работающего с AD.

Я считаю, что LDAP — это мой уровень сохраняемости. Таким образом, моя модель домена состоит из объектов, которые относятся к моему приложению, а не к AD. Моя реализация репозитория — это все вещи, специфичные для AD, которые берут мои объекты и сопоставляют их с объектами AD и так далее. На самом деле я создал IRepository для базы, а затем IUserRepository и т. д., если это необходимо для агрегатов домена. Реализации затем называются ADUserRepository.

Я считаю, что это самый простой способ справиться со всем этим и сохранить свой разум; это также упрощает тестирование того, что я делаю (не уверен, что это поможет с вашим приложением).

Я не знаю никаких инструментов OLM (красивый термин), которые вы могли бы использовать; Я только что сопоставил его вручную, так как меня действительно интересует только подмножество того, что есть в AD.

person Paul    schedule 08.04.2009