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

Ric*_*ddy 5 sql connection-string web-config trustedconnection

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

目前我有我的站点设置,以便它可以使用我使用数据库名称,服务器IP,db用户和db pwd创建的连接字符串来读/写数据库.我创建的db用户在数据库(而不是db owner)中设置了"公共"角色,并且只能运行exec存储过程.我的连接字符串目前看起来像这样:

<add name="SiteDBConn" connectionString="Server=IPOfServer;Database=DBname;User ID=userhere;Password=passhere;"/>
Run Code Online (Sandbox Code Playgroud)

虽然这对我来说非常合适,但我想设置一个不包含任何用户名和密码的数据库连接字符串.在我的一些其他服务器上,SQL服务器与Web文件位于同一服务器上,我可以使用可信连接并使用我的数据库中内置的"网络服务"用户.这让我运行一个没有用户名和密码的连接字符串,如下所示:

<add name="SiteDBConn" connectionString="Server=localhost;Database=DBname;Trusted_Connection=Yes;"/>
Run Code Online (Sandbox Code Playgroud)

在使用2个不同的服务器时,是否有一种简单的方法来实现与数据库的连接而无需使用用户名和密码进行硬编码(如上面的连接字符串)?我是否在浪费时间沿着这条路走下去,看看我创建的数据库用户如何只有exec权限呢?

谢谢你对此的看法.

Raj*_*ore 5

你不是在浪费时间.这是一个非常好的做法.当您在不同的计算机上分离出IIS和SQL时,以下是一些选项:

  • 在IIS框和SQL服务器上创建asp.net用户(最好使用相同的密码)
  • 使用模拟(更改您的网站运行的上下文)
  • 加密注册表中的连接字符串配置文件,忘记可信连接(brrrr)
  • 将asp.net上下文切换为域用户
  • 在本机应用程序模式下使用IIS6