sql - 远程数据库服务器的连接字符串

标签 sql web-config connection-string trustedconnection

我目前设置了 2 台服务器。一个是运行 Win Server 08 的 Web 服务器,另一个是在 Win Server 08 上运行 SQL Server 08 的数据库服务器。

目前我有我的站点设置,以便它可以使用我使用数据库名称、服务器 ip、db 用户和 db pwd 创建的连接字符串来读取/写入数据库。我创建的 db 用户在数据库中有一个“公共(public)”角色设置(不是 db 所有者),并且可以运行 exec 存储过程。我的连接字符串当前如下所示:

<add name="SiteDBConn" connectionString="Server=IPOfServer;Database=DBname;User ID=userhere;Password=passhere;"/>

虽然这对我来说非常有效,但我想设置一个不包含任何用户名和密码的数据库连接字符串。在我的其他一些服务器上,SQL 服务器与 Web 文件位于同一台服务器上,我可以使用受信任的连接并使用我的数据库中内置的“网络服务”用户。这让我可以运行一个没有用户名和密码的连接字符串,如下所示:
<add name="SiteDBConn" connectionString="Server=localhost;Database=DBname;Trusted_Connection=Yes;"/>

当使用 2 个不同的服务器时,是否有一种简单的方法可以在不硬编码用户名和密码的情况下实现与数据库的连接 - 就像上面的连接字符串一样?我是否在浪费时间沿着这条路线走,因为我创建的数据库用户无论如何都只有 exec 权限?

感谢您对此的想法。

最佳答案

你不是在浪费你的时间。这是一个非常好的做法。当您在不同的机器上分离出 IIS 和 SQL 时,这里有一些选项:

  • 在 IIS 框和 SQL 服务器上创建 asp.net 用户(最好使用相同的密码)
  • 使用模拟(更改站点运行的上下文)
  • 将注册表中的连接字符串加密为配置文件并忘记受信任的连接 (brrrr)
  • 将 asp.net 上下文切换为域用户
  • 在 native 应用程序模式下使用 IIS6
  • 关于sql - 远程数据库服务器的连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1044796/

    相关文章:

    PHP表单只显示一行

    sql - 当存在空值时将列从 varchar 更改为十进制

    java - 如何多线程更新由sql代码更新的数据库?

    java - Azure 应用服务首次请求时速度缓慢

    c# - HttpRequestValidationException 显示 YSOD 尽管 customErrors 部分

    excel - 我应该选择哪个提供商来通过 AdoConnection 连接到 Excel 版本 11?

    php - MySQL针对数据表的优化和查询优化

    asp.net - 在 web.config 中使用 web.config 变量

    c# - 不支持关键字 : 'data source' in ASP.net Entity Framework 6

    entity-framework - Azure 网站异常 : Format of the initialization string does not conform to specification starting at index 0