我正在尝试将ASP.NET应用程序从Server 2003(和IIS6)移植到Server 2008(IIS7)。
当我尝试在浏览器上访问该页面时,我得到以下信息:
“/”应用程序中的服务器错误。
安全异常
描述:应用程序试图执行安全策略不允许的操作。要授予该应用程序所需的权限,请与系统管理员联系,或在配置文件中更改该应用程序的信任级别。
异常详细信息:System.Security.SecurityException:未找到源,但无法搜索部分或全部事件日志。不可访问的日志:安全性
源错误:
在执行当前Web请求期间生成了未处理的异常。有关异常的来源和位置的信息可以使用下面的异常堆栈跟踪来标识。
堆栈跟踪:
[SecurityException:未找到源,但无法搜索部分或全部事件日志。不可访问的日志:安全。]
System.Diagnostics.EventLog.FindSourceRegistration(String source,String machinename,Boolean readonly)+562 System.Diagnostics.EventLog.SourceExists(String Source,String MachineName)+251
[剪下]
以下是我尝试解决这个问题的方法:
授予“ Everyone ”对密钥HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Security
的完全访问权限。这起作用了。但我自然不能在生产中这样做。因此,我在运行应用程序几分钟后删除了“所有人”权限,错误再次出现。
我在应用程序日志和安全日志中创建了源代码(并通过注册表编辑器验证了它的存在),在安装过程中使用了提升的权限,但错误仍然存在。
我在web.config
文件中为应用程序提供了完全信任级别(并使用appcmd.exe
),但无济于事。
有没有人知道在这里可以做些什么?
PS:这是问题的后续。我按照给出的答案,但无济于事(见上面的#2)。