0

我的任务是让 asp.net (vb.net) 与我们生产服务器上的分析服务引擎对话。Web 服务器是独立于 Web 服务器的机器。Web 服务器以 IUSR_ 用户身份运行。该应用程序(当然)在同时具有 IIS 和分析服务的开发机器上工作。我看到的问题似乎是权限错误(由 asp.net 应用程序在浏览器中返回):

An existing connection was forcibly closed by the remote host ....

它在这里的类似帖子中进行了描述:http ://www.mydatabasesupport.com/forums/sqlserver-olap/201903-existing-connection-forcibly-closed-remote-host.html

我不是系统管理员,也不是分析服务专家(你问我为什么要负责这个任务?因为其他人无法让它工作并且它已经落在了我身上)。无论如何,我可以使用一些帮助......我已经尝试创建用户(IUSR_)并将其添加到sql server并将该用户添加到角色中。虽然这在我的本地机器上工作,但它在我们的生产环境中不起作用,其中 sql 和 web 服务器是分开的。

蒂亚,唐

4

1 回答 1

0

经过一番摆弄后,我想出了一些可行的方法。它可能不是一个巨大的安全问题,因为该服务器对公共互联网不可见;它只对几个 iis 服务器可见(它不在我们的局域网上) - 然而,这是一个“蛮力”、不安全的解决方案(无论如何在某些环境中)......

  1. 在 IIS 服务器上:将此添加到 web 配置中的连接字符串中:SSPI=anonymous; 这会打开未经身份验证的访问请求。
  2. 在 SQL SERVER 上:在分析服务中,右键单击服务器。在“一般”下靠近底部到“Security\RequireClientAuthentication”并将其更改为 False
  3. 在同一页面,选择左侧的“安全”(而不是一般)。将“匿名登录”添加到用户列表
  4. 离开服务器属性。右键单击多维数据集中的 CubeViewer 角色并选择属性。将匿名登录添加到用户列表中。

所以,我可以从我们的 iis 服务器未经身份验证访问 sql 服务器。

我仍然有兴趣看到更安全的解决方案 - 哦,我忘了提到,没有域......这是同一子网上的两台服务器,只有常规登录。

于 2009-05-08T18:19:11.760 回答