gpt4 book ai didi

iis-8 - 需要什么权限/策略来支持新应用程序池的 loadUserProfile=true?

转载 作者:行者123 更新时间:2023-12-03 18:34:31 28 4
gpt4 key购买 nike

过去几周在我的开发工作站 (Windows 8.1) 上发生了一些事情,这要求我要么使用“加载用户配置文件”设置为 False 运行我的应用程序池,要么不使用设置为 ApplicationPoolIdentity 的身份运行。如果我要创建一个新的应用程序池,使用 ApplicationPoolIdentity 作为身份并使用 loadUserProfile=true,尝试在浏览器中加载应用程序时会发生以下情况:

  • Windows 事件日志中的许多错误(系统和应用程序类型):
  • 警告事件 1509 - Windows cannot copy file \\?\C:\Users\Default\AppData\Local\Microsoft\VSCommon\12.0\SQM\sqmdata-7236-039-00000.sqm to location \\?\C:\Users\[Name of App Pool]\AppData\Local\Microsoft\VSCommon\12.0\SQM\sqmdata-7236-039-00000.sqm. This error may be caused by network problems or insufficient security rights.
  • 错误事件 1511 - Windows cannot find the local profile and is logging you on with a temporary profile. Changes you make to this profile will be lost when you log off.
  • 另一个1509警告
  • 错误事件 1500 - Windows cannot log you on because your profile cannot be loaded. Check that you are connected to the network, and that your network is functioning correctly. DETAIL - Only part of a ReadProcessMemory or WriteProcessMemory request was completed.
  • 5 x 事件 5022 警告 - The Windows Process Activation Service failed to create a worker process for the application pool '[App Pool Name]'. The data field contains the error number.
  • 最后出现错误 5002 - Application pool '[App Pool Name]' is being automatically disabled due to a series of failures in the process(es) serving that application pool.
  • 应用程序池已关闭,如错误 5002 所述
  • “Http错误503服务不可用。”然后在浏览器中看到。任何进一步的请求都会得到相同的满足(这是有道理的,因为应用程序池已关闭)。

  • 我已经看到了一个常见的“修复” herehere这基本上是说要关闭配置文件加载。是的,它使问题消失,但这并没有找到根本原因。我知道可以使用此配置运行,因为我有一台支持该配置的 Windows 2012 机器。在这种情况下,点击一个新应用程序池设置为 ApplicationPoolIdentity 和 loadUserProfile=true 的应用程序实际上会创建新的用户配置文件(我可以看到配置文件文件夹是在 C:\Users 中创建的)并且应用程序运行得很愉快。更糟糕的是我知道几周前这个配置在有问题的机器上工作。我创建了许多应用程序池,它们在 C:\Users 下有自己的配置文件和文件夹。文件夹。这些应用程序池现在可以使用 ApplicationPoolIdentity 和 loadUserProfile=true 设置正常工作。只是新应用程序池拒绝运行和加载用户配置文件。

    有没有人对可能发生的事情有任何见解?

    编辑 : 我看了 this recent article的底部.说设置可以开启有点矛盾,但也说:

    Only the standard application pools (DefaultAppPool and Classic .NET AppPool) have user profiles on disk. No user profile is created if the Administrator creates a new application pool.

    However, if you want, you can configure IIS application pools to load the user profile by setting the LoadUserProfile attribute to "true".



    我很困惑。

    最佳答案

    事件日志警告中列出的 SQM 文件是由 Windows 或 Visual Studio 更新创建的。当用户配置文件服务或应用程序池运行并尝试创建新配置文件时,它会尝试将文件复制到配置文件。 SQM 文件需要管理员权限才能复制。用户配置文件服务或应用程序池没有足够的权限来复制文件,会生成错误,并且不会创建用户配置文件。如果没有用户配置文件,应用程序池就无法运行,因为它没有一个隔离的安全位置来存储数据。

    从源目录中移除或删除 SQM 文件,应用程序池初始化时将成功创建用户配置文件。您还可以更改 SQM 文件的权限,但我不确定适当的权限应该是什么。用户配置文件服务作为“LocalSystem 帐户”运行。查看它的 documentation获取许可信息。我不清楚是应用程序池标识本身用于执行复制操作,还是本地系统帐户。

    如果您从源目录中删除该文件,您也可以手动将文件复制到它试图去的地方。

    在对 SQM 是什么进行了非常简短的搜索之后,它似乎传统上被用作“服务质量管理”。通常它会包含一些信息,通过指标、日志或类似的东西发送回程序作者。我不知道这个文件是否是这种情况。因此,将其包含在新配置文件中似乎并不重要。

    我不能 100% 相信这个答案,因为我被其他一些问题的答案所附的评论提示了。我在打开的 50 个浏览器选项卡中找不到它的链接以解决此问题。那个家伙值得感谢,因为我相信这是一个比 IIS 6 中将所有资源集中在一起而损害服务器安全性更好的解决方案。

    附言正如您在评论中指出的,bug report已备案。

    关于iis-8 - 需要什么权限/策略来支持新应用程序池的 loadUserProfile=true?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23050561/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com