我正在尝试写入自定义事件日志....但是我收到错误:
Win32Exception访问被拒绝 无法打开源'blah'的日志。您可能没有写入权限。
我已经在网上拖网..跟随变种链接,到目前为止我遇到过的最好的链接 this one。虽然不是那么清楚......
这是一个2008 R2开发服务器。 我添加了以下REG_SZ键“CustomSD”,其值为 O:BAG:SYD:(A ;; 0x7 ;;; AN)(A ;; 0x7 ;;; SY)(A ;; 0x7 ;;; BA)(A ;; 0x7 ;;; SO)(A ;; 0x7 ;;; IU)(A ;; 0x7 ;;; SU)
到注册表文件夹“eventlog”和我的子文件夹。
我还允许每个人完全访问物理事件日志(.evtx文件)......但一切都无济于事......
我认为我正在为各种帐户类型(SY =系统等)提供读写和清除访问权限。
我的网站失败是在默认的IISAPPPool帐户下运行的。
任何想法?
提前致谢,
吉姆
答案 0 :(得分:1)
ASP.NET在信任度降低的环境中运行。
如果您的事件日志源尚不存在,则必须添加注册表项才能创建它。
但这在信任度降低的环境中无效。
您应该为正在使用的事件源创建安装程序类,然后在部署期间“安装”该网站。最快的方法是创建一个“组件”来进行事件记录,将事件日志组件拖到设计图面上,设置属性,然后选择创建安装程序的命令。
在部署时,您只需针对Web应用程序的DLL运行“installutil”。将在Web应用程序启动之前创建事件源。