2011-02-11 140 views
0

我有(幾乎)在我的保護無效的Application_Error(對象發件人,EventArgs e)在Global.asax中的方法將下面的代碼....ASP.NET:安全異常不被抓到在Global.asax中

異常ex = Server.GetLastError();

如果(例如是 System.Security.SecurityException)

的Response.Redirect( 「Logon.aspx」);

else

Response.Redirect(「ErrorPage.aspx」);

如果我在登錄之前導航到一個頁面,那麼該異常會被捕獲,並且我會像我期望的那樣被重定向到Login.aspx。但是,這隻在使用本地機器上的VS進行調試時才起作用。

上傳到實時環境時,該異常未被捕獲,並且用戶被提示「安全異常 - 請求主體權限失敗。」。

任何想法可能是什麼問題?我猜這是一個IIS的東西 - 任何想法?

謝謝,

ETFairfax。

+0

我還沒有確認這是一個解決方法,但我沒有找到誰做這個固定的問題一個人:Threading.Thread.CurrentPrincipal =的HttpContext 。當前用戶 – 2011-02-12 00:41:57

回答

0

嘗試Threading.Thread.CurrentPrincipal = HttpContext.Current.User