如何使用DDD将Active Directory集成到.NET应用程序中?

Dav*_*her 10 .net domain-driven-design active-directory s#arp-architecture

如何将Active Directory对象(用户,组等)集成到DDD .NET应用程序中?您的存储库是什么样的,您如何处理LDAP会话,事务和工作单元?请注意,我不是在讨论简单的身份验证/授权方案,而是在AD对象是应用程序核心域模型的一部分时.

我正在开发一个为AD用户配置/取消配置的应用程序,我很好奇其他人正在做什么来将AD对象引入他们的DDD应用程序.我想你并没有在你的应用程序中拖动DirectoryEntry对象,但我没有找到任何好的ORM类型的LDAP对象工具(可能是OLM - 对象 - LDAP映射?).

编辑:关于这个问题的更多背景信息是在Sharp Architecture项目的这篇论坛帖子中.

Pau*_*aul 5

实际上,我正在做类似的事情.不是同一个目标,而是使用DDD构建适用于AD的应用程序的事实.

我的看法是LDAP是我的持久层.因此,我的域模型全部由特定于我的应用程序的对象组成,而不是特定于AD.然后我的存储库实现是所有AD特定的东西,获取我的对象并将它们映射到AD对象等等.我实际上为域聚合构建了基础的IRepository,然后是IUserRepository等.然后将实现命名为ADUserRepository.

我发现这是管理这一切并保持思绪的最简单方法; 它还使测试更容易我正在做的事情(不确定它会帮助你的应用程序).

我不知道你可以使用的任何OLM(好词)工具; 我刚刚手动映射它,因为我真的只对AD中的一部分感兴趣.