在事件查看器中看到很多下面的提示信息:
Event code: 4005 Event message: 请求的窗体身份验证失败。 原因: 提供的票证无效。 Event time: Event time (UTC): Event ID: Event sequence: Event occurrence: Event detail code: 50201
Event code: 4005 Event message: 请求的窗体身份验证失败。 原因: 提供的票证已过期。 Event time: Event time (UTC): Event ID: Event sequence: Event occurrence: Event detail code: 50202
看着这个错误心烦。网上找了很多处理方法,感觉都不对症。于是反编译了,源代码,发觉如下顺序查找:
FormsAuthenticationModule.OnAuthenticate-->ExtractTicketFromCookie
这个函数中可以看到对FormsAuthentication.Decrypt调用。
在获取到票据后,会进行判断
判断产生俩结果,一个是null,一个是过期
null会写事件日志WebBaseEvent.RaiseSystemEvent(null, 0xfa5, 0xc419);
过期也会写事件日志 WebBaseEvent.RaiseSystemEvent(null, 0xfa5, 0xc41a);
0xfa5 4005
0xc419 50201
0xc41a 50202
大家对照一下就明白了。
所以 这个提示没办法去除。除非通过配置文件把这样的提示都屏蔽了。屏蔽方法如下:
<healthMonitoring> <rules> <remove name="Failure Audits Default" /> </rules> </healthMonitoring>