Asp.net 控制对数据的访问

Asp.net 控制对数据的访问,asp.net,entity-framework,asp.net-mvc-4,Asp.net,Entity Framework,Asp.net Mvc 4,我经常遇到这样的情况:我想限制对数据而不是方法的访问 例如,我有一个users表。单个用户的记录应该只对他们自己、帮助台和用户的经理可见。但是,只有管理员可以编辑用户 我可以使用授权属性通过上述角色限制查看和编辑方法,但是我仍然需要检查并查看当前用户是否有能力触摸他请求的数据。这就是授权属性的不足之处 我目前正在考虑向我的所有模型中添加一个IsAuthorized方法,以检查当前用户是否被允许执行当前操作,但这通常看起来很乏味,所以我想看看是否有其他人有一种集中的方法来执行此操作 再次感谢 目前

我经常遇到这样的情况:我想限制对数据而不是方法的访问

例如,我有一个users表。单个用户的记录应该只对他们自己、帮助台和用户的经理可见。但是,只有管理员可以编辑用户

我可以使用授权属性通过上述角色限制查看和编辑方法,但是我仍然需要检查并查看当前用户是否有能力触摸他请求的数据。这就是授权属性的不足之处

我目前正在考虑向我的所有模型中添加一个IsAuthorized方法,以检查当前用户是否被允许执行当前操作,但这通常看起来很乏味,所以我想看看是否有其他人有一种集中的方法来执行此操作

再次感谢


目前,所有内容都使用ASP.NET C MVC 4.5进行编码。

从数据角度来看,您需要做的就是限制它,将当前用户的ID传递给任何检索它的查询…@BrianMains我不确定我是否理解您的意思。如果您不希望用户因为其权限而查看某些数据,不要从控制器返回该数据;在数据库级别对其进行筛选。如果没有看到一些代码,可能很难谈论基本原理。