使用 Spring Boot 加密敏感数据

问题描述

大家好

我在 Spring Boot 中对信用卡号等重要数据的加密做了大量研究,三种安全加密数据的方法引起了我的注意:

  1. 使用 Hashicorp Vault
  2. 保护机密
  3. 列级加密
  4. 使用 Java 加密扩展
  5. 进行数据加密

这三种方法各有优缺点。 Vault 的初始设置需要大量配置,我找不到完整的集成资源来学习它。 列级数据加密给服务器带来了很大的处理负载,并且需要对加密密钥进行管理。第三种情况需要为每个客户端请求创建、管理和维护加密密钥。是否有更好的选择来管理敏感的客户数据,例如电子邮件地址或信用卡号?还是建议使用Vault来管理网站用户的秘密?

解决方法

我可以鼓励您看看我们的产品吗?我不希望这是一个无耻的插件,但作为一个感受到你痛苦的开发人员,我想你会想看看我们有什么。我们设计它是为了解决您的一些问题。 ubiqsecurity.com

解决您的具体考虑。

  1. 比设置 Hashicorp Vault 容易得多。我们有在 5 分钟内以两种不同语言创建帐户和共享加密数据的演示。如有必要,演示应该可以帮助您入门,但我不希望您需要它们。我们的客户端库还提供功能齐全的示例来帮助您入门。

  2. 这似乎是 DBA 不愿在 DB 层内开启加密的原因。我们将加密留在应用层。如果您的加密数据库已启动并正在运行,并且有人在数据库服务器上使用收集到的凭据,那么您的数据库真的安全吗?

  3. 我们为您管理加密密钥。客户端使用 API 密钥(类似于其他 SaaS)。数据在客户端加密。

如果您有任何问题,请随时与我们联系。再次强调,不要试图成为一个无耻的插件,但我们知道开发人员在使用加密时面临的问题,并且认为我们的解决方案解决了您面临的许多问题以及您甚至没有提到的其他问题。