3

我在托管在 IIS 和 Windows server 2003 上的 ASP.NET 应用程序中使用 NLog。当我在开发机器上运行代码时,一切正常。但是当我将代码部署到服务器时。NLog 目标的初始化会导致一个安全异常:

安全异常描述:应用程序试图执行安全策略不允许的操作。要授予此应用程序所需的权限,请联系您的系统管理员或在配置文件中更改应用程序的信任级别。

Exception Details: System.Security.SecurityException: Requested registry access is not allowed.

源错误:

在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。

堆栈跟踪:

[SecurityException: Requested registry access is not allowed.]
System.ThrowHelper.ThrowSecurityException(ExceptionResource resource) +51
Microsoft.Win32.RegistryKey.OpenSubKey(String name, Boolean writable) +7462217
System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) + 366
NLog.Targets.EventLogTarget.CreateEventSourceIfNeeded() +637 NLog.Targets.EventLogTarget.InitializeTarget() +40 NLog.Targets.Target.Initialize() +264 NLog.Config.LoggingConfiguration.InitializeAll() +233

有人在什么时候应该怎么做才能给应用程序适当的许可?谢谢!

4

2 回答 2

2

好的,我明白了。网络服务帐户没有读取/写入事件日志的权限。这就是抛出异常的原因。

于 2010-08-24T07:54:46.223 回答
0

我以管理员身份运行了一次我的应用程序,以在EventLog.

于 2017-09-07T06:34:11.813 回答