【问题标题】:Principle of Least Privilege with Entity Framework实体框架最小权限原则
【发布时间】:2017-09-06 13:57:51
【问题描述】:

我正在阅读我的安全性并有一个一般性问题。 在数据库中,用户应该被授予他们需要的唯一属性,即选择、读取、删除等。

当使用实体框架作为 ORM 时,我该如何实现呢? 实体没有权限的概念。

谢谢

【问题讨论】:

    标签: entity-framework security least-privilege


    【解决方案1】:

    为 Entity Framework 实现最小权限的方式是使用数据库登录名从 EF 连接到数据库(通常这将在连接字符串中设置)。根据您使用 EF 的方式,该登录应该只允许执行某些操作。

    显然,它需要对表(或视图)进行 CRUD 访问,除非您使用存储过程进行插入/更新/删除。它需要在您使用的任何函数或存储过程上执行。

    此外,如果您打算使用 Code First 迁移,它基本上必须拥有所有权,因为它将添加/删除表和列。

    现在,这就是您为 EF 实现最小权限的方式,这可能不是您想要的。如果您想知道如何为您的用户实现它,那么这将是一个身份验证和授权问题,这超出了数据库的范围,对于你的申请。 (我想从技术上讲,您可以使用用户必须使用数据库登录名登录的方法,该方法将用于配置 EF 与数据库的连接,但我认为这往往很容易出错,特别是如果它在网络应用程序。)

    如果这对您有帮助,请告诉我。 :)

    【讨论】:

      猜你喜欢
      • 2016-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-09
      相关资源
      最近更新 更多