2017-09-06 40 views
2

我正在阅读我的安全性并有一个普遍问题。 在数据库中,用户应该被授予唯一的,它们需要即选,读属性,删除等实体框架最小权限原则

当使用实体框架的ORM我怎么能实现呢? 实体没有权限的概念。

感谢

回答

1

您实现最低权限的实体框架是您使用数据库登录您的连接从EF数据库(通常这会在连接字符串中设置)的方式。根据您使用EF的方式,只能允许该登录执行某些操作。

显然它需要对表(或视图)进行CRUD访问,除非您使用存储过程进行插入/更新/删除。它需要在您使用的任何函数或存储过程上执行。另外,如果你打算使用Code First Migrations,它将不得不基本拥有所有权,因为它将添加/删除表和列。

现在,这就是你如何实现EF的最小特权,这可能不是你所期待的。如果您想知道如何为您的用户实现它,那么这将是一个验证和授权的问题,这将超出数据库的范围,并且对您的应用程序而言更成为一个问题。 (我想在技术上你可以使用一种方法,用户必须使用数据库登录来登录,这将用于配置EF与数据库的连接,但我认为这往往是非常容易出错的,特别是当它处于web应用程序)。

让我知道是否帮助你。 :)