如何在.net windows窗体应用程序中将访问控制与我的ORM集成?

Yin*_*ing 6 c# database orm access-control

我正在开发一个通用的数据库查询工具,一个.Net 3.5 Windows窗体应用程序.为了使表示层独立于数据库层.我使用了一个ORM框架,来自DevExpress的XPO.

但是,我没有内置的访问控制功能.我浏览了互联网,我发现在WCF数据服务中,有一个有趣的概念,拦截器,它遵循AOP(面向方面​​编程).

我想知道谁有这样的经验来在ORM中构建访问控制.我的基本要求是:

  1. 它应该是一种通用方法,并由用户在运行时控制.所以任何硬编码都是不可接受的.
  2. 它可以基于属性,数据库表甚至外部程序集.

我愿意买一个现成的解决方案.根据AOP的思想,访问控制功能可以轻松地与现有功能集成,并且几乎不会对以前的开发人员有所了解;)

欢迎任何建议.

Ale*_*man 1

我不确定这个答案对您的情况有帮助,但它可能对您来说很有趣。

X-tense 公司(DataObjects.Net ORM的开发者)计划在几个月内为 DataObjects.Net 实现类似的功能。X-tense 的计划是提供全功能、随时可用的安全扩展,可能基于属性和方面。当然,它与这个 ORM 密切相关,但你可以从它的描述中得出一些想法。请参阅此处的功能请求及其讨论。

您还可以查看Rhino Security,我不知道该项目的当前状态,但看起来这样的解决方案对您的情况很有用。