我最近在清理我的文件系统,发现 c:\users* 目录中很少有我从未直接创建的用户。这应该包含在本地计算机上创建/登录的所有用户。我观察到这些用户名与我在 IIS 中创建的应用程序池的名称相同。

为了确认我在 IIS 中创建了一个新的应用程序池,然后观察这个目录。它仍然不在那里。后来我创建了一个新网站,分配了这个应用程序池并从浏览器访问了该网站,然后我看到了一个新的用户配置文件,其中包含新应用程序池的名称。

问题是 - 为什么它为每个 IIS 应用程序池创建一个用户配置文件?是否绝对有必要拥有,是否可以配置为不创建?会有什么坏处吗?我不记得在早期的 IIS 中看到过这个,即 6.0。

我的环境 - Windows 7 64 位,IIS 7.5

我试着用谷歌搜索,但大多数链接告诉我如何使用应用程序池和东西配置用户/身份,但没有关于这些问题的具体内容。

最佳答案

这种行为是因为从 IIS 7 开始的新安全模型。

从 IIS 7 开始的应用程序池标识



- Application Pool Identities (2009)

主要原因是安全性,每个应用程序池都是相互隔离的。

LoadUserProfile=true 创建用户配置文件文件夹

通过在我的机器上进行试验,我相信此设置负责创建的文件夹。

将 LoadUserProfile 设置为 true 意味着 IIS 将加载应用程序池标识的用户配置文件。当应用程序实际启动时会发生这种情况,您可以通过创建一个新的应用程序池来测试这一点,如果设置为 false ,当您第一次访问网站时,不应在 C:\Users 下创建新文件夹.

- IIS Documentation

根据文档 LoadUserProfile 默认情况下应该是 false ,虽然我注意到在 Win 7 机器上它可能被设置为 true 0x25181914213。您可以通过 IIS gui 更改此默认值:

iis - 为什么在 IIS 中创建应用程序池时会创建新的 Windows 用户配置文件-LMLPHP

关于iis - 为什么在 IIS 中创建应用程序池时会创建新的 Windows 用户配置文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13006470/

10-17 00:42