我正在尝试创建一个基于Azure SQL数据库后端的服务。
该服务将是多租户的,并且将包含来自多个“客户”的高度敏感信息(潜在地可能有数十万个),这些信息必须严格隔离并严密保护,以防止数据泄漏。使用如此多的单独数据库是不可行的,因为会有很多客户,每个客户的信息都很少。
我已经研究了Azure提供的透明加密,但这实际上会将整个数据库作为一个单位进行加密,因此它不能防止客户之间或其他人之间的泄漏;由于开发错误或恶意攻击,这非常关键,一个“客户”的信息绝不能落入任何其他人的手中。
因此,我真正想要实现的是,使用不同的密钥加密数据库中每个客户的数据,以便您必须从每个客户(从他们的“物理”位置)获取密钥才能解密您可能从该特定客户的数据库中提取的任何数据,这对于任何人来说几乎是不可能的。
我的意思清楚吗?
你们有什么建议可以帮我解决这个问题,或者知道任何第三方解决方案可以实现这个功能吗?还有其他建议吗?
该服务将是多租户的,并且将包含来自多个“客户”的高度敏感信息(潜在地可能有数十万个),这些信息必须严格隔离并严密保护,以防止数据泄漏。使用如此多的单独数据库是不可行的,因为会有很多客户,每个客户的信息都很少。
我已经研究了Azure提供的透明加密,但这实际上会将整个数据库作为一个单位进行加密,因此它不能防止客户之间或其他人之间的泄漏;由于开发错误或恶意攻击,这非常关键,一个“客户”的信息绝不能落入任何其他人的手中。
因此,我真正想要实现的是,使用不同的密钥加密数据库中每个客户的数据,以便您必须从每个客户(从他们的“物理”位置)获取密钥才能解密您可能从该特定客户的数据库中提取的任何数据,这对于任何人来说几乎是不可能的。
我的意思清楚吗?
你们有什么建议可以帮我解决这个问题,或者知道任何第三方解决方案可以实现这个功能吗?还有其他建议吗?