ASP.NET中的安全异常和IIS 7.5中的“加载用户配置文件”选项问题如何解决?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (942)

在部署新版本的ASP.NET 2.0应用程序后,它开始引发安全异常:“System.Security.SecurityException:请求类型为”System.Web.AspNetHostingPermission,System,Version = 2.0.0.0,Culture =中立,PublicKeyToken = b77a5c561934e089'失败。“。

经过对互联网的快速研究,我们能够通过在IIS 7.5应用程序池中将“加载用户配置文件”设置为True来解决此问题。

然而,我们无法找到为什么它必须是真实的。我们检查了新版本中的所有更改(很高兴只有少数),但没有发现任何可疑内容(无法访问注册表或临时数据,因为某些文章建议等)。当IIS 7.5中托管的ASP.NET应用程序需要“加载用户配置文件”选项设置为True时,任何人都可以给我们提示吗?

细节:

  • 应用程序池:.NET 2.0; 管理管道模式 - 经典; 身份 - 自定义域帐户
  • 在IIS 6.0(W2K3)中:旧版和新版应用程序正常工作
  • 在IIS 7.5(W2K8-R2)中:旧版本的应用程序正常工作; 新版本的应用程序引发安全异常 - 将“加载用户配置文件”设置为True后开始工作
提问于
用户回答回答于

“加载用户配置文件”设置可以帮助使用临时文件的另一个示例。有时这种用法可能是间接的。例如,SQL Express可以在某些情况下执行此操作。

所以我的建议。关闭“加载用户配置文件”并检查%TEMP%。然后尝试为用于应用程序池的域帐户提供对%TEMP%目录的完全访问权限(或更改访问权限)。可能它解决了你的问题。

还有一个建议是使用进程监视器(请参阅http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx)以了解哪些部分用户配置文件将被使用(或接收“访问被拒绝”错误)当收到“System.Security.SecurityException:请求类型'System.Web.AspNetHostingPermission”异常的权限。

用户回答回答于

我也遇到了同样的问题,可以通过设置load user profile = true来解决问题。然而,我已经恢复了负载用户配置文件= false并重新启动应用程序池,但现在我没有得到任何异常。

扫码关注云+社区

领取腾讯云代金券