我想'AJAX-ify'我的網站,以改善用戶界面體驗。在性能方面,我也試圖擺脫UpdatePanel。我在Encosia上遇到過一篇很棒的文章,展示了使用PageMethods進行發佈的方式。我的問題是,生產環境中的頁面方法有多安全?公開的話,任何人都可以創建一個JSON腳本直接發佈到服務器,或者是否存在跨域檢查?我的PageMethods也會將數據寫入數據庫(過濾後)。PageMethods安全
我在頁面中使用表單身份驗證,並且在頁面加載時,它將未經身份驗證的用戶重定向到登錄頁面。如果用戶直接POST方法,或者是整個頁面繼承的認證,頁面上的頁面方法是否也需要檢查認證? (基本上,即使用戶只能發佈到PageMethod,整個頁面循環都會發生嗎?)?
感謝
你忽略了CSRF。 – SLaks 2010-03-21 14:06:30
@Slaks - 我不這麼認爲。 REST方法需要application/json內容類型。 CSRF或XSS漏洞無法實現。我花了一段時間來追查一些確鑿的證據 - 請參閱http://weblogs.asp.net/scottgu/archive/2007/04/04/json-hijacking-and-how-asp-net-ajax-1-0 -mitigates-these-attacks.aspx – 2010-03-21 14:56:32
Hi Sky Sanders。我的PageMethod旨在允許用戶更新他們的個人資料設置。我總是使用POST(即使在檢索數據時)並確保設置了contentType。 Page Handler是一個標準。aspx處理程序,其中IsAuthenticated在頁面加載時被檢查。當你說FormsAuthentication會保護除登錄頁面以外的所有內容,這是否意味着IsAuthenticated(頁面加載)將由頁面方法繼承,因爲它們都在同一頁面上? – keyboardP 2010-03-21 16:02:58