【问题标题】:Protect sensitive information from the DBA in SQL Server 2008在 SQL Server 2008 中保护 DBA 的敏感信息
【发布时间】:2010-10-28 13:18:31
【问题描述】:

我们的客户需要加密 MOSS 内容数据库,因此如果没有正确的加密密钥,DBA 或未经授权的人应该无法查看内容数据库。似乎 SQL Server 2008 中的透明数据加密 (TDE) 无法保护敏感信息免受 DBA 的侵害,因为 TDE 旨在保护“静止”数据。这里有人遇到过这个问题吗?

【问题讨论】:

  • 这可能不是信任问题,而是能力问题。他们似乎要求 DBA 不可能看到敏感数据。 DBA 应该能够销毁所有数据,但不能看到它。

标签: sql-server database tde


【解决方案1】:

在我看来,在数据库中包含敏感数据的要求是信任数据库管理员。

即使您可以以 dba 无法看到的方式加密数据,他也可以嗅探您传递密钥(或数据!)的连接或设置触发器以在加密之前捕获数据如果计划允许这样做。

简而言之,获得值得信赖的 DBA 是一种更简单、更好的解决方案。

【讨论】:

  • 为了防止 DBA 嗅探连接,您可以在应用程序级别进行加密。
【解决方案2】:

如果您不能信任 DBA,就不能信任数据库本身。您的应用程序应该只将加密数据传送到数据库服务器。

话虽如此,还有运行您的应用程序的服务器的管理员。加密你不再信任他的方式几乎是不可能的。

在这里同意 Vinko,找一个你可以信任的 DBA,或者谁可以通过筛选。

【讨论】:

    【解决方案3】:

    同样的问题...

    我们是一家 mssql 数据库托管公司,我可以说这不是问题,相信 DBA 与否。 我们的客户是银行和保险公司,他们的要求是:“DBA 不能读取数据库”,因为它包含非常敏感的数据。

    目前我们正在寻找解决方案。

    【讨论】:

    【解决方案4】:

    没有办法让数据在 DB 中仍然可用。

    可以这样做,以便数据在数据库之外可用。只需在 CRUD 操作之前使用某种方法对其进行加密。

    有一些方法可以让 DBA 更“合理”地访问数据,例如 f.ex。您可以将密钥作为内联数据存储在 sqlclr 函数中,但 DBA 仍然可以访问它们的二进制代码。然而,这意味着复制密钥、同步,这几乎会阻碍有效的安全性。

    【讨论】:

    • 难道只输入加密内容不会成为真正的性能杀手吗?此外,鉴于这是一个 Sharepoint 数据库,我怀疑您是否真的可以做到这一点。
    【解决方案5】:

    相信 DBA?! 从技术上讲,如果我们允许 DBA 不受任何限制地控制安全性,整个系统就会变得脆弱,因为如果 DBA 受到威胁,整个系统的安全性就会受到威胁,这将是一场灾难。

    【讨论】:

    • 流氓程序员在系统中插入后门怎么办?还是流氓经理出售他们从有效使用系统中获得的报告中的数据?还是复制硬盘的胭脂清洁工? ...你明白了。你只需要相信某人。否则,我们谈论的是军事安全级别,没有人知道一切,一切都是在需要知道的基础上处理的,等等,但那是真正的钱。对于 Sharepoint 数据库,在我看来,获得一个诚实的 DBA 就足够了。我什至不确定您是否可以使用现成的数据库服务器实现这种安全性。
    【解决方案6】:

    在应用程序级别加密数据是可行的方法。您需要将密钥存储在 DBA 无法访问的地方。

    这是久经考验的解决方案,没什么新意。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-19
      相关资源
      最近更新 更多