我有一个 ASP.Net 应用程序 .net 3.5 SP1,在 Win7 中运行。在登录过程中,ASP.Net 登录控件中的某些内容导致写入事件日志中的安全日志(这听起来我可以接受)。问题是该应用似乎无权执行此操作。有错误是:
说明:应用程序试图执行安全策略不允许的操作。要授予此应用程序所需的权限,请联系您的系统管理员或在配置文件中更改应用程序的信任级别。
异常详细信息:System.Security.SecurityException:请求“System.Diagnostics.EventLogPermission、System、Version=2.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089”类型的权限失败。
堆栈跟踪没有显示我的应用程序中的一行代码,它全部在框架中。最后 5 行是: System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet) +0 System.Security.CodeAccessPermission.Demand() +61 System.Diagnostics.EventLog..ctor(String logName, String machineName , String source) +125 System.Diagnostics.EventLog..ctor() +24 System.Diagnostics.EventLog.WriteEntry(String source, String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData) +52
同样的应用程序在 XP SP2 上运行良好。我四处寻找,找不到如何授予权限。我尝试将 hte 应用程序池作为 LocalSystem 和 ApplicationPoolIdentity 运行。
让这个运行最简单的方法是什么?它是我的本地开发机器,我不在乎是否打开安全漏洞,只要我不必修改代码(即我需要解决方案是 INETMGR 更改或 web.config 或一些本地权限等)。
谢谢!