在IIS 7.0中,应用程序池标识和网站标识之间有什么区别?

在IIS 5.0中,默认情况下应用程序池的标识帐户是ASPNET,除非启用模拟,否则网站将在其应用程序池标识的帐户下运行。

但在IIS 7.0中,有两个地方可以configuration我的网站将使用的帐户。 在应用程序池级别和网站级别。

我期望网站的身份覆盖应用程序池的身份,但我刚刚看到,情况并非如此。

那么,有什么区别?

这两个账户是不同的东西。 考虑代表网站用户的网站标识。 如果你创build一个新的网站,这个帐户是匿名的IIS帐户。 如果您禁用“匿名身份validation”,您的用户将不得不根据网站进行身份validation(在Intranet / Windows域网站中,这可能会使用networking凭据来隐含)。

应用程序池标识是运行您的程序集所需的Windows帐户。 通常情况下,这是“ networking服务 ”帐户,这是一个用户权限有限的权限最低的帐户。 它具有networking凭据。 这意味着您可以使用它来对域中的networking资源进行身份validation。 您也可以使用它来访问具有集成安全性的SQL Server数据库。

例如,如果您的ASP.NET应用程序必须写入文件夹,则必须将权限授予应用程序池帐户,而不是授予网站帐户。 有关应用程序池标识的更多信息, 请阅读此处 。

注意:在IIS 7中,有一种方法可以为匿名网站帐户使用应用程序池标识的相同帐户:

在这里输入图像描述