您如何将Active Directory对象(用户,组等)集成到DDD .NET应用程序中?您的存储库是什么样子,以及如何处理LDAP会话,事务和工作单元?请注意,我不是在谈论简单的身份验证/授权方案,而是AD对象是应用程序核心域模型的一部分.
我正在开发一个为AD用户提供/取消配置的应用程序,我很好奇其他人正在将AD对象引入其DDD应用程序.我想象你没有在你的应用程序中拖动DirectoryEntry对象,但是还没有找到任何好的ORM类型的LDAP对象工具(也许是OLM – Object-LDAP Mapping?).
编辑:关于这个问题的更多背景信息是在this forum post从夏普建筑项目.
实际上我在做类似的事情.不一样的目标,而是使用DDD来构建一个适用于/ AD的应用程序的事实.
我的看法是,LDAP是我的持久层.所以我的域模型都是由我的应用程序特有的对象组成的,而不是特定于AD的.我的存储库实现是所有AD特定的东西,把我的对象和映射到AD对象等等.实际上,我们根据需要为域聚合构建了一个基础的存储库,然后构建了IUserRepository等等.然后,这些实现被命名为ADUserRepository.
我觉得这是最简单的方法来管理这一切,保持我的思想;它也使测试更容易我正在做的(不确定它会帮助你的应用程序).
我不知道可以使用的任何OLM(好的术语)工具;我刚刚把它手动映射,因为我真的很感兴趣的只是AD的一个子集.