与其他服务器的ASP.NET可信数据库连接在Casini中工作,而不是在IIS中工作

StackOverflow https://stackoverflow.com/questions/205140

  •  03-07-2019
  •  | 
  •  

使用内置网络服务器在本地运行网站时,我们的网站正确连接到数据库。但是,当我们将站点部署到运行IIS的服务器时,会出现数据库连接错误。数据库服务器与我们的IIS服务器不同。请注意,作为IIS的SAME服务器上的其他数据库的可信连接正常工作。

我们需要做什么才能连接到具有可信连接的其他服务器上的SQL数据库?

有帮助吗?

解决方案

当您使用Cassini运行网站时,Web服务器进程使用的帐户是您自己用于登录Windows计算机的帐户。该帐户在IIS上会有所不同。

考虑将数据库打开到比可信连接所需的更广泛访问权限的安全隐患。也许您可以将Windows身份验证与服务帐户一起使用。也就是说,在具有有限权限的SQL Server中创建特定于应用程序的用户。然后,您将获得连接池的好处,同时避免传递凭据。

其他提示

我会检查IIS中的应用程序域用于连接到SQL Server的用户帐户。 IIS中的帐户可能也无法访问网络资源,这可以解释到达其他数据库服务器的问题。

听起来您需要配置数据库服务器以提供对您尝试连接的数据库的访问权限。

假设SQL Server,登录到SQL Server企业管理器并在安全性下 - >登录,打开适用用户的属性(可能是Web服务器的网络服务或ASP.NET帐户),然后转到“数据库访问”选项卡,并确保为要连接的数据库选中“允许”复选框。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top