我写了一个 Electron 应用程序。它工作正常。我使用本地存储来保存可以在应用程序中进行的所有选项。这包括数据库配置。
在浏览器中,这可能是个好主意,因为网站可能会破解它?
这不是一个网站,而是一个 Electron 应用程序,除了主索引 html 文件外,它不会加载任何网页。
我应该使用本地存储进行数据库配置吗?
那么,如果我关心基本安全性,我应该使用本地存储进行数据库配置吗?它不是银行(不需要哈希),但它不应该向全世界开放。
除了主要问题外,还有一些可选的子问题。
最佳答案
我假设如下:
如果我上面所说的属实,那么不,您的解决方案不安全。您提供的解决方案不属于硬编码 secret 类别,但非常接近。在内存中,您可能持有一些 secret ,这些 secret 可能赋予用户与他已经拥有的相同级别的权利,例如他的 session cookie 或 token 。您不得放置任何 - 当获得时 - 将允许用户拥有更大的访问权限。
那么,如何解决这个问题。简单地说你不能。您可能想要混淆或隐藏或加密数据,但混淆可以被破坏,隐藏可以被发现,并且加密的数据必须在某个时刻必须使用 key 解密,该 key 必须位于某处。
解决方案是一个三层架构,其中一个应用服务器执行身份验证、授权和访问控制。除非您想播放并在数据库中为每个用户提供自己的数据库架构/访问权限,否则这也可能是一个解决方案,但我不知道有人会这样做。
关于database - 我应该在 Electron 中使用本地存储进行数据库配置吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62594284/