在事件查看器中看到很多下面的提示信息:
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>