2012-10-11 275 views
2
控制的服務器上的SQL Server數據庫

可能重複:
Is it possible to password protect an SQL server database even from administrators of the server?保護管理/第三方管理員

我主持我的SQL Server 2008數據庫的Windows 7計算機。 Windows 7機器和SQL Server 2008由第三方管理員控制和管理。

我在我的數據庫中有敏感信息。

如何保護我的數據庫,使第三方管理員不會看到敏感數據?

有什麼辦法來限制複製的存儲過程,表設計等第三方管理員

+0

可能重複的[是否可以密碼保護SQL服務器數據庫甚至從服務器的管理員?](http://stackoverflow.com/questions/4552376/is-it-possible-to-password-protect- AN-SQL服務器數據庫偶數從-administrato)。你也可以找到[這個問題](http://stackoverflow.com/questions/5645097/protect-stored-procedure-by-deny-view-definition/5650103#5650103)是相關的。 – Pondlife

回答

1

只在有限的程度。

如果他們正在管理實際的SQL Server實例以及它們具有「王國的密鑰」。他們可以查看每個對象的定義,對定義或數據進行更改,並做其他任何事情。即使他們只擁有管理員權限但不是服務器,他們也可以通過某些techniques服務器上的管理員來獲得管理權限,這些權限通常被認爲是有效的,而不是漏洞或攻擊。畢竟他們的服務器和服務器會服從他們。

在這種情況下,您需要至少在一定程度上信任這些管理員。如果你不能信任它們,理想情況下你根本不應該託管它們,如果你不能信任它們並且必須與它們一起託管,那麼嘗試獲得你自己的虛擬機,你至少可以應用一些額外的安全和審計。

雖然有幾件事情可以做,但沒有一件是完全有效的。

第一種是加密。如果您滿足所有要求並正確設置,SQL的透明數據加密可以防止沒有密鑰讀取數據庫中的數據的管理員(但他們仍可以看到結構!)。這對保護實際數據(但不是結構)有效,但很難正確設置。

您可以使用「with encryption」選項來保護您的存儲過程。這是非常薄弱的​​保護,它很容易解決這個問題。但它至少發出強烈的信息,好奇你不希望他們看起來,並讓他們跳過一些籃球。

痕跡和審計也將幫助您確定發生的事情,看看他們是否做了任何事情,但這些都是以績效價格出現的。

+0

如果您擔心的信息受美國政府法規(例如HIPAA下涵蓋的PHI)控制,那麼SQL服務器中的基本加密算法可以滿足要求,假設您將解密密鑰安全地存儲在別處。否則,就像答案一樣,這是他們的服務器,他們對它有相當程度的控制,你無法避免。 –

+1

您還可以識別需要加密的關鍵字段,例如密碼,SSN,工資等等,並在將這些數據發送到SQL服務器之前在您的應用程序級別中對它們進行加密/解密。 –

+0

@BenFinkel這是一個偉大的觀點。感謝您添加它。 – TimothyAWiseman

0

您好針對此問題,你必須遵循一些步驟來保護多達像一定程度上沒有完美的防禦

如果您不希望服務器上管理員組中的任何人能夠訪問數據庫,請刪除服務器上的「BUILTIN \ Administrators」用戶。

啓用審計

啓用加密

使用在IO級別第三方工具阻止污物到數據庫,除非提供密碼