【问题标题】:User and password included internally in the code代码内部包含的用户和密码
【发布时间】:2012-11-20 16:18:58
【问题描述】:

我使用 C# 编写了 WinForm 应用程序。该应用程序需要连接到数据库,因此它包含以下代码:

String connstring = String.Format("Server={0};Port={1};" +
                    "User Id={2};Password={3};Database={4};",
                    "localhost", "3456", "username",
                    "password", "databasename" );

这意味着数据库服务器的用户和密码包含在应用程序内部。我认为这不是一种安全的方式。有什么办法可以提供更多的安全性?

【问题讨论】:

  • encrypt SQL connectionstring c# 的可能重复项
  • @TLiebe 并不是真正的重复,因为 OP 不知道您可以首先加密连接字符串,他正在寻找有关如何使他的应用程序更安全的选项。

标签: c# database winforms security


【解决方案1】:

您可以将加密的连接字符串添加到您的 app.config。

欲了解更多信息:Securing Connection Strings

【讨论】:

  • 这绝对是要走的路! :)
【解决方案2】:

您可以将它们存储在本地文件中,然后使用系统权限使其难以修改。

【讨论】:

    【解决方案3】:
    1. 忽略这个问题。
    2. 让用户输入数据库用户名/密码
    3. 不要连接数据库,而是连接 Http 服务,这样就不会以任何方式泄露数据库连接密码。

    【讨论】:

      猜你喜欢
      • 2018-04-13
      • 2018-04-28
      • 1970-01-01
      • 1970-01-01
      • 2012-03-26
      • 2012-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多