【问题标题】:connect to database server without connection string连接到没有连接字符串的数据库服务器
【发布时间】:2016-11-12 00:14:21
【问题描述】:

从问题标题看有没有什么方法可以不使用字符串连接连接到数据库服务器?

我不会,但代码中的连接字符串我想要另一种方式。

不管是什么数据库引擎都有可能吗。

我正在使用 C# 构建一个 Windows 窗体应用程序。

我的意思是像受信任的设备或 Windows 身份验证,或者通过对接服务器端的程序来进行身份验证

【问题讨论】:

  • 没有连接字符串,你想如何设置服务器名、数据库名、用户名、密码、...?
  • 我的意思是受信任的设备或 Windows 身份验证或通过对接服务器端的程序来进行身份验证
  • 您听说过 app.config 和 ConnectionStrings 部分吗? msdn.microsoft.com/en-us/library/ms254494(v=vs.110).aspx
  • 不,我没有,但根据你的链接,我必须在配置文件中提供用户名和密码,这不是我想做的

标签: c# mysql sql oracle


【解决方案1】:

你不能。您必须有一个连接字符串来提供服务器的位置和数据库名称。

如果您因为害怕对代码进行逆向工程而需要隐藏凭据,那么您有两种选择:

1 - 使用集成安全性 (Docs)。

2 - 加密您的配置文件:关注此link 或此link

此外,您可能会发现此Article 很有帮助。

【讨论】:

  • 是的,我想隐藏凭证,但加密不是我想要的。集成安全性怎么样,您能否提供一些有关它的更多信息?
  • @AnAs51993 链接添加到答案。
  • 看来我必须有一个(Intranet)并且我想使用互联网^_^。那么有没有其他方法或者我应该关闭这个问题:(。
  • @AnAs51993 对我来说没有。但你可以等。也许有人有更好的答案。如果您想引起对这个问题的关注,请尝试在其上设置 50 点声望奖励
  • @AnAs51993 我添加了另一个用于加密配置文件的链接,我认为这是你最后的希望。
【解决方案2】:

在 Oracle 中,除了完全连接字符串之外,您可以使用可信连接(Os 身份验证)和 Kerberos 身份验证。 您可以在那里找到所有类型的身份验证: https://docs.oracle.com/database/121/ODPNT/featConnecting.htm#ODPNT163

【讨论】:

    【解决方案3】:

    我最终使用带有 Slim 3 框架的 PHP 来创建一个 Post 请求,这样我不必将连接字符串放在我的应用程序上我只需要发送一些凭据信息,并且在服务器上说我运行一个进程来检查此凭据信息是否有效并将结果发回,这是一种非常困难的方法,因为您需要创建自己的安全方法,但它对我有用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-18
      • 1970-01-01
      • 2013-03-08
      • 1970-01-01
      • 2013-07-30
      相关资源
      最近更新 更多