我有一个相当菜鸟的问题,我似乎无法找到答案。所以我听说所有的 Electron 应用程序都可以变成源代码然后进行操作。所以这引出了我的下一个问题。如果我要连接到 SQL 数据库,那么是什么阻止人们查看源代码、进入并对数据库做任何他们想做的事情?我的意思是,一旦他们看到源代码,用户名和密码就在那里......很抱歉,如果这是一个愚蠢的问题,但我正在考虑在 Electron 上制作一些需要体面安全的东西。我也听说不能使用 php。所以...任何建议将不胜感激。我只是想知道,因为 Discord、whatsapp 等似乎以某种方式做到了这一点,但怎么做到的?
谢谢!
最佳答案
好吧,任何应用程序中的任何信息都可以被逆向工程,所以我建议不要硬编码数据库密码或任何其他关键凭证。
我假设 Slack、Discord 和其他人不会在应用程序中硬编码他们的数据库密码。他们的桌面应用程序不直接与数据库“对话”,而是与一些服务器端应用程序对话。作为用户,您必须向您的帐户提供凭据。通信是通过 API 完成的,这意味着基于您的用户权限的各种限制。此服务器端应用程序决定您可以做什么和不能做什么,并将您的请求转换为数据库操作。
因此,使用这些应用程序时,您甚至不会接近他们的数据库密码。
如果你想做客户端应用程序,它应该能够在数据库上做一些操作,我会建议同样的,把这个应用程序分成两部分:ClientApp 和 ServerApp。
关于javascript - Electron SQL 安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49684968/