MongoDB保证数据安全



我正在制作一个将用户笔记存储到mongoDB中的web应用程序。问题是内容是原始存储的(这意味着我可以读取用户写下的内容)。有什么方法可以让我保证这些信息的安全吗?也许后端服务器中的加密功能可以在存储到数据库之前混合内容,然后在从数据库获取数据时撤销加密的内容。

我目前正在考虑我的方法上面

如果用户笔记如此敏感,是否可以将其存储在本地?如果没有,那么有几个解决方案:

  1. 就像你建议的那样,你可以在数据库插入之前对后端API进行加密,然后在检索时对后端API进行解密。如果检查数据库,这将阻止您读取它,但由于您的API拥有该加密的密钥,因此您仍然可以在技术上解密并读取它。
  2. 上述解决方案,但可以通过在密钥中添加用户提供的盐来更好地解决问题。接下来的问题是,您必须在客户端跟踪并创建该盐——并且每次都必须是相同的。客户仍然需要告诉您盐的种类,并相信您没有储存盐。但是总是有这样的问题,如果你是请求日志,你可能会得到盐解密,即使你没有将它存储在数据库中。
  3. 最好的(也是唯一的)解决方案,以确保你不能解密它是端到端加密。加密密钥由用户创建和存储,从不传输到服务器。您可以从密码中导出它或随机生成并将其存储在本地等。加密发生在客户端发送数据之前,并且客户端也解密它。

最新更新