【问题标题】:Securely store a db password without setting up a service无需设置服务即可安全存储数据库密码
【发布时间】:2016-10-20 16:46:03
【问题描述】:

目前正在为我们的用户制作一个用于访问和编辑数据库的 Web 应用程序

我们只有一个与此数据库的连接,无法再建立更多连接,但我们也无法将此凭据提供给我们的任何网络应用未来用户。

这个想法是使用 Windows 帐户在应用程序中创建另一个安全层

伪代码:

db = "dbconnection1"
dbuser = "admin1"
dbpassword = "123456"

enabledWinUsers = { "winUsr1", "winUsr2", "winUsr3" }

winusr = aplication.getWinUser()

if winusr in enabledWinUsers :
    db.connect( db, dbuser, dbpassword )

目前,数据库逻辑和连接都将在 Python 中完成,而应用程序则在 Javascript/Jquery 中完成

问题是,是否可以在不设置 Node.js 之类的服务的情况下以任何方式保护此代码或数据库凭据?

我确实对运行 Web 应用程序的服务器具有完全访问权限

【问题讨论】:

  • 对不起,我还没有喝咖啡。您是说您希望客户端的 JS 代码直接与服务器上的数据库通信?我希望不是。后端代码是什么? C#? VB?
  • @Zuzlx 它的python,javascript只是调用py脚本的前端
  • 或许可以在问题中添加 py 标签,以便引起 py 帮派的注意
  • 如果您允许程序自动模拟真实(域)用户,则存在安全问题。问责制消失了。您需要寻找更合适的解决方案。
  • @IInspectable 基本上应用程序将以“编辑器”用户身份连接,数据库不关心谁是编辑器,因为其中没有编辑器跟踪

标签: javascript python windows security iis


【解决方案1】:

您可以在源代码中加密用户凭据并从源代码中解密它们。另一种选择是将凭据设置为环境变量

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    • 2022-08-14
    • 1970-01-01
    • 2017-10-15
    • 2019-12-16
    • 2012-11-09
    • 1970-01-01
    相关资源
    最近更新 更多