2017-04-19 57 views
0

我確實想使用SQL Server 2016的行級安全特徵,它說,在文檔的最佳實踐部分:爲什麼要爲SQL Server中的安全對象創建單獨的模式?

強烈建議以創建RLS對象單獨規劃(謂詞功能和安全策略)。

此聲明背後的原因是什麼?什麼是好處?

+1

Schema對數據庫對象的_logical_分離非常有用。例如,您可能會有一堆核心表,它們都是dbo,它們負責管理您的核心業務功能(製造小部件)。現在,您可以創建一堆與您的核心業務功能無關的表,視圖和特效,它們只處理行級安全性。如果你在他們自己的獨立模式中創建它們,它們與對象瀏覽器中的其他對象在視覺上是分開的。在架構之前,這可能是通過在每個對象前加一個特殊代碼來實現的。 –

+1

您可能會創建一個名爲'admin'的模式來存放這些RLS對象以及任何其他管理函數,如日誌記錄,實用函數,sp_whoisactive等,或者您可能創建一個名爲'rls'的模式,其中只包含rls對象。 _使用模式!!! _ - 它們會阻止您的數據庫成爲其功能沒有明確區分的對象的大湯匙。它也是一種讓你停下來思考物體的目的以及它們在大圖中的位置的方法 –

+2

根據鏈接書的作者,「這是因爲任何用戶都應該能夠訪問這些功能,獨立模式中的RLS對象可以很容易地管理這些權限「。鏈接:https://books.google.fr/books?id=COZODQAAQBAJ&pg=PA62&lpg=PA62&dq=It+is+highly+recommended+to+create+a+separate+schema+for+the+RLS+objects&source=bl&ots= 8Cdr_Ft_Ht&SIG = SVga1m681cbyGamqYJmwN1IjJEY&HL = EN&SA = X&VED = 0ahUKEwjbp6DXh7DTAhUML1AKHZvFCCwQ6AEINDAD#v = onepage&q&F =假 – Joe

回答

0

它完全是出於組織原因 - 在一個地方(在一個模式下)具有所有安全增強功能非常有用。

好處是 - 你的數據庫不會看起來凌亂。

相關問題