2

Possible Duplicate:
Is it possible to password protect an SQL server database even from administrators of the server?

I am hosting my database on SQL Server 2008 on a windows 7 machine. The Windows 7 machine and the SQL Server 2008 are controlled and administered by third party admins.

I have sensitive information in my database.

How do I secure my database, so that the third party admins do not look at the sensitive data?

Is there any way to restrict the third party admins from copying the stored procedures, table designs etc.

4

2 回答 2

1

只是在有限的程度上。

如果他们同时管理实际的 SQL Server 实例,他们就拥有“通往王国的钥匙”。他们可以查看每个对象的定义,对定义或数据进行更改,并且几乎可以做任何其他事情。即使他们只有机器上的管理员权限,但没有服务器上的管理员权限,他们也可以通过某些通常被认为有效的技术而不是错误或漏洞利用来获得服务器上的管理员权限。毕竟是他们的服务器,服务器会服从他们。

在这种情况下,您需要能够至少在一定程度上信任这些管理员。如果您不能信任它们,理想情况下您根本不应该托管它们,如果您不能信任它们并且必须托管它们,请尝试获取您自己的虚拟机,您至少可以在其中应用一些额外的安全性和审计。

您可以做一些事情,但没有一个是完全有效的。

首先是加密。如果您满足所有要求并正确设置,SQL 的透明数据加密可以防止没有密钥的管理员读取数据库中的数据(但他们仍然可以看到结构!)。这在保护实际数据(但不是结构)方面非常有效,但很难正确设置。

您可以使用“带加密”选项来保护您的存储过程。这是非常薄弱的​​保护,很容易解决这个问题。但它至少向好奇的人发出了一个强烈的信息,即你​​不希望他们看起来并让他们跳过一些圈子。

跟踪和审计还可以帮助您确定发生了什么并查看他们是否做了任何事情,但这些都是以性能为代价的。

于 2012-10-11T18:35:17.037 回答
0

嗨,这个问题没有完美的防御措施,你必须采取一些步骤来保护在某种程度上,比如

如果您不希望服务器上 admin 组中的任何人能够访问数据库,请删除服务器上的“BUILTIN\Administrators”用户。

启用审核

启用加密

除非提供密码,否则在 io 级别使用第三方工具阻止对数据库的 crud

于 2012-10-11T18:20:01.827 回答