初始化Nlog事件日志目标时出现安全异常

3
我在我的托管于IIS和Windows Server 2003的ASP.NET应用程序中使用NLog。当我在开发机上运行代码时,一切正常。但是当我将代码部署到服务器上时,NLog目标的初始化将导致安全异常:
安全异常 描述:应用程序尝试执行安全策略不允许的操作。要授予此应用程序所需的权限,请联系系统管理员或更改配置文件中的应用程序信任级别。
Exception Details: System.Security.SecurityException: Requested registry access is not allowed.

错误来源:

在当前 web 请求执行期间产生了一个未处理的异常。可以使用下面的异常堆栈跟踪信息来确定异常的起源和位置。

堆栈跟踪:

[SecurityException: 不允许请求注册表访问权限。]
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

请问有人知道我应该怎么做才能给应用程序适当的权限吗?谢谢!


有人有同样的问题吗? - Roy
2个回答

2

好的,我明白了。网络服务账户没有读/写事件日志的权限。这就是为什么会抛出异常。


1
对于IIS新手:如何给事件日志授予权限? - simaglei

0

我已经以管理员身份运行了我的应用程序,以创建适当的规则在EventLog中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接