始终,但始终,加密Azure SQL数据库,如何实现



是否有办法让始终加密的数据库?

我的意思是没有系统管理员,没有人能够读取数据。一旦加密,数据将永远加密。这是一个具有许多客户的应用程序的数据库(通过电子邮件/密码进行身份验证)。

除了凭据之外,客户还必须输入PIN,这是否可以实现?数据是用PIN码加密的,仅此而已,只有当他们输入PIN码时,客户才能看到他们未加密的数据。

如果他们丢失了PIN,那么数据是不可恢复的。

最接近的是行级加密,但它可以在以下用例中使用:

  • 医院可以创建一个安全策略,允许护士仅查看其患者的数据行。
  • 银行可以根据员工在公司的业务部门或角色创建策略来限制对财务数据行的访问。
  • 多租户应用程序可以创建一个策略来强制每个租户的数据行与其他租户的数据行进行逻辑分离。将多个租户的数据存储在一个表中可以提高效率。每个租户只能看到自己的数据行。

但是这并不能解决你的问题,因为你应该为每个客户创建一个用户,而应用程序总是有自己的用户。

SQL Server可以提供给你的最安全的东西是永远加密:在这种情况下,系统管理员将无法访问数据。但是不要期望每个用户都有不同的PIN。

总的来说,你正在寻找的是所谓的同态加密,其中数据永远不会被解密。但我不明白你为什么要这样做。

举个例子,你想要解决的问题是什么?

因为:

  • 没有系统管理员,没有人能够读取数据->总是加密的
  • "客户除凭据外必须输入的PIN码">—>我从来没有听说过这样的事情,可能现在只是在研究中。

最新更新