2017-09-06 41 views
2

我正在閱讀我的安全性並有一個普遍問題。 在數據庫中,用戶應該被授予唯一的,它們需要即選,讀屬性,刪除等實體框架最小權限原則

當使用實體框架的ORM我怎麼能實現呢? 實體沒有權限的概念。

感謝

回答

1

您實現最低權限的實體框架是您使用數據庫登錄您的連接從EF數據庫(通常這會在連接字符串中設置)的方式。根據您使用EF的方式,只能允許該登錄執行某些操作。

顯然它需要對錶(或視圖)進行CRUD訪問,除非您使用存儲過程進行插入/更新/刪除。它需要在您使用的任何函數或存儲過程上執行。另外,如果你打算使用Code First Migrations,它將不得不基本擁有所有權,因爲它將添加/刪除表和列。

現在,這就是你如何實現EF的最小特權,這可能不是你所期待的。如果您想知道如何爲您的用戶實現它,那麼這將是一個驗證和授權的問題,這將超出數據庫的範圍,並且對您的應用程序而言更成爲一個問題。 (我想在技術上你可以使用一種方法,用戶必須使用數據庫登錄來登錄,這將用於配置EF與數據庫的連接,但我認爲這往往是非常容易出錯的,特別是當它處於web應用程序)。

讓我知道是否幫助你。 :)