2010-08-17 65 views
2

我在托管在IIS和Windows Server 2003上的ASP.NET应用程序中使用NLog。当我在开发机器上运行代码时,一切正常。但是当我将代码部署到服务器时。 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

有谁的时候我应该怎样才能做到,给应用程序适当的权限?谢谢!

+0

有没有人有同样的问题? – Roy 2010-08-18 05:14:03

回答

2

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

0

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