代码之家  ›  专栏  ›  技术社区  ›  rmontgomery429

在SQL Server 2008中,如何保护数据,使其在连接到网络之前无法解密?

  •  0
  • rmontgomery429  · 技术社区  · 18 年前

    我们最近在SQL Server 2008中为开发人员的笔记本电脑上的本地数据库实施了透明数据加密,以在笔记本电脑被盗或丢失时保护它们。这个很好用。

    现在,我们正试图找到一种让证书每天过期的方法,强制一个自动进程(登录时的脚本)转到网络路径,并在一天后获取一个过期的新证书。这将确保如果发生了不可预见的事情,数据将在第二天无法使用。

    我也研究过使用加密提供程序,但似乎没有任何“提供程序”。也许我错了。

    我乐于接受建议。如果有更好的方法,请告诉我。谢谢!

    5 回复  |  直到 14 年前
        1
  •  3
  •   Josh    18 年前

    简短回答:否

    长答案:一旦一条消息(一段数据)被加密,不管什么时候应用了解密算法,同一个密钥都会对同一条加密消息进行解密。如果每天更改密钥,则必须用旧密钥解密数据,并用新密钥重新加密。如果这个过程没有发生(即有人停止执行重新加密的代码的运行),旧的密钥仍然可以工作。即使您确实创建了一个加密提供程序来检查日期,其他人也可以创建一个新的提供程序来执行解密,而无需首先检查日期。

        2
  •  1
  •   J Hunt    18 年前

    t解决问题而不是动机。如果使用派生模板设置Microsoft CA(设置为过期一天),并允许在该证书模板上自动注册。然后,您可以将您的SQL机器设置为使用自动注册的目录中的ou的一部分(technet将为此提供资源,需要使用goup策略)。这样,当证书过期时,计算机将自动请求一个新的证书。

    http://windowsitpro.com/article/articleid/40948/windows-server-2003-pki-certificate-autoenrollment.html

    作记号

        3
  •  1
  •   Travis Thomas    15 年前

    不是真的!有用于SQL Server 2008加密的选项。查看数据库加密解决方案 here 在townsendsecurity.com.Townsend的联盟AES加密是一个经过NIST认证的解决方案,可以使您遵守有关医疗保健、信用卡和银行业的法规。也看到 white paper 联盟AES加密。

    在数据库应用程序中使用敏感数据的企业 想要加密数据以防止丢失。 保护敏感数据可提高客户信任度和 忠诚度,减少法律责任,帮助满足监管要求 数据安全要求。数据库示例 可能包含敏感信息的是Oracle 数据库,IBM DB2,Microsoft SQL Server,MySQL, 以及Microsoft Access。不管是磁盘还是文件夹 可能使用的加密技术,实际 应加密数据以防止丢失

    全面披露:我是汤森保安公司的实习生。

        4
  •  0
  •   rIPPER    18 年前

    如果没有其他细节,我无法理解TDE设置如何保护数据,以防丢失或被盗。

    如果您没有使用全磁盘加密(通过Bitlocker、TrueCrypt等),那么作为物理上拥有硬件的攻击者,我可以轻松地重置本地管理密码、启动笔记本电脑并使用本地管理凭据访问SQL Server实例。此时,我是数据库服务器上的系统管理员,能够提取任何我想要的数据或关闭TDE。

    此外,由于所有加密密钥和证书都存储在本地,因此物理拥有设备的攻击者相对容易访问这些密钥和证书。只有当您将数据库加密密钥保护器(存储在主数据库中)与加密数据库物理分离时,TDE才对数据保护有意义。

    如果您使用的是全磁盘加密,那么TDE的使用不会对攻击者提供任何额外的威慑,并且只会对开发人员的笔记本电脑的系统性能产生不利影响。

        5
  •  0
  •   Brent Ozar    18 年前

    你说得对-你想要的是一个密码提供者,你说的对,现在还没有。

    如果你要参加11月的帕斯峰会,请与微软的JCCannon谈谈。他正在做一个关于法规遵从性的会话,他是SQL Server法规遵从性组的负责人。他与当前正在构建密码提供者的供应商有联系,他可能能够与您讨论供应商名称。现在他们还没有公开宣布是谁干的。

    推荐文章