asp.net - 管道模式和池标识是否会影响使用集成安全性运行的应用程序?

标签 asp.net iis iis-7 asp.net-2.0

我的应用程序基于 ASP.NET 2.0 构建,并托管在运行 Windows Server 2008 R2 的专用服务器上。

从最近几天开始,我的用户提示应用程序通过选择以前的 SQL Server 连接值开始出现故障。 GridView 开始显示 DropDown 控件的选项等等。当我重新启动 SQL Server 后台服务时,一切正常。我与人们进行了很多讨论,但很少有人认为它与应用程序池有关。

我查看了 IIS 属性以查看哪个应用程序池正在运行我的应用程序。我发现我的应用程序正在使用经典应用程序池和 托管管道模式 设置为:Classic .该应用程序也在运行 应用程序池标识 :LocalSystemAccount .

在数据库连接字符串中(在 web.config 文件中),我使用服务器名称作为 LocalHost 与集成 Security=SSPI .

我想知道上述设置是否与此故障有关。

我是否需要将管道模式更改为集成并将应用程序放在单独的池中?是否集成 Security=SSPIPipeLine Mode有什么关系?

最佳答案

回复:管道模式和集成安全设置是否相关:否。

管道模式指示 IIS 处理请求的方式。 Classic 本质上是 IIS6 模型,ASP.NET 代码通过 ISAPI 运行。 Integrated 在 IIS 7 的新模型中将 ASP.NET 处理带入主管道。

集成安全性正在确定您的应用程序在建立连接时向 SQL 提供的身份验证。 SSPI 我相信意味着您将使用 App Pool 进程的帐户凭据。由于您使用的是 LocalSystemAccount,它将是本地系统。如果 SQL Server 实例在单独的机器上,这可能会出现问题,但如果它是 localhost,我想它会受到信任。

至于不稳定行为的根源......我没有答案。应用程序池 可以 进入一个棘手的状态,但我认为该状态与管道模式无关。

关于asp.net - 管道模式和池标识是否会影响使用集成安全性运行的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9411652/

相关文章:

asp.net-mvc - IIS 显示文件夹内容列表而不是运行网站(mvc 应用程序)

windows - 64 位操作系统 (windows) 上的 32 位应用程序

c# - EPiServer.Configuration.Settings.Instance - 应用程序使用 siteId ="x"的设置进行初始化,但当前请求映射到 siteId ="y"

asp.net - "Could not load file or assembly ' X.dll ' or one of its dependencies. The specified module could not be found."- 在主机服务器上

c# - 在 asp .net mvc 中分配给输入文本值时字符串被截断

c# - 使用存储过程在 ASP Gridview 中自定义分页

asp.net-mvc-3 - 如何使用 Windows 身份验证允许匿名访问我的 mvc3 应用程序

c# - ASP.NET 中请求或服务器独有的静态类实例?

php - 将ASP函数转换为PHP以生成密码

asp.net - iis 7 和 .net Framework 4.0 beta 2