2013年1月30日 星期三

ASP.NET MVC - ValidateAntiForgeryToken 與 自定 HandleError 處理顯示客製的錯誤訊息頁

在 ASP.NET MVC 裡為了要防止 CSRF (Cross-Site Request Forgery) 跨站偽造請求的攻擊,我們可以在 View 的表單中加入「@Html.AntiForgeryToken」然後在對應的後端 Action 方法加上「ValidateAntiForgeryToken」Attribute 來防止 CSRF 的攻擊,相關 CSRF 的資訊可以參考以下的連結:

Wiki :  Cross-site request forgery
TWISC@NTUST網路應用安全知識庫 : 跨網站的偽造要求(CSRF)
宅學習 : CSRF攻擊及防禦方法
ibm : CSRF 攻击的应对之道

而當網站接收到沒有 AntiForgeryToken 的 POST 請求時就會返回錯誤訊息,如果沒有指定錯誤頁的話大多會是使用預設的 Error Page,比較好的錯誤訊息顯示方式是不要透漏太多訊息,以免讓有心者可以去鑽漏洞,但如果真的想要指定錯誤頁的話,也是有方法的,這篇文章當中就跟各位來說明。


2013年1月17日 星期四

Sublime Text 2 - IMESupport

好久沒有寫 Sublime Text 2 相關的文章了,這麼久沒寫其實在之前也曾經解釋過,畢竟我還是開發 ASP.NET MVC 為主,所以編輯器是使用 Visual Studio,在編輯前端網頁的內容或是 Javascript 時,Visual Studio 已經是有提供相當不錯的功能,但還是有需要使用 Sublime Text 2 的時候,在使用 ST2 時會有個小小的困擾,那就是輸入中文的時候,在 Windows 環境下,在 ST2 裡面輸入中文真的是會讓使用者一整個怪異與不習慣,

image

以前曾經有位朋友向我提起過這個問題,最後也只能歸納為 ST2 對於非英語系的文字輸入支援度不夠,最後也就不了了之,然而最近看到 ST2 有個 Packages 是能夠解決這個問題。


ASP.NET MVC 4 使用 MiniProfiler 的調整方式

之前部落格裡介紹 ASP.NET MVC 使用 MiniProfiler 的文章都還是使用 ASP.NET MVC 3,到了 ASP.NET MVC 4 之後就沒有再介紹過了,而 ASP.NET MVC 4 仍然還是可以用 MiniProfiler 整合套件還是使用「MiniProfiler.MVC3」,不過有些地方是需要做些設定上的調整,另外在「MiniProfiler 安全性釋疑」這一篇文章是以 ASP.NET WebForm 來做說明,卻忘了交代 ASP.NET MVC 應該要怎麼做,所以這篇文章就來做個補充說明。


2013年1月7日 星期一

開箱文 - 2013 Microsoft MVP Award

當一月一號晚上得知獲選為 2013 第一季微軟 MVP 之後就一直期待著證書與獎座的到來,飄洋過海以及經過數日的等待,終於在今天中午寄送到家了,小弟到目前為止還沒有過一張與工作技能相關的正式證書,所以我相當重視這次微軟 MVP,就讓小弟再用一篇開箱文來滿足我那小小的虛榮心。

 


2013年1月6日 星期日

ASP.NET Web Forms 專案加入 ASP.NET MVC 4

ASP.NET MVC 與 Web Forms 的開發在前端展現處理上是有很大的差異,但是資料處理、商業邏輯的部份卻是沒有什麼不同的(當然這邊不包括說在 Web Forms 裡有人會使用到的 DataSource 控制項,基本上我開發 Web Forms 已經不用這些 DataSource 控制項),所以我們可以嘗試在 Web Forms 網站專案中加入 ASP.NET MVC,讓 Web Forms 與 MVC 共存在一個網站專案中,這樣的整合方式並不適合 ASP.NET MVC 的初學者,這一篇適合已經熟悉 ASP.NET Web Forms 並且也已經對於 ASP.NET MVC 開發相當熟悉的開發人員,對 ASP.NET Web Forms 還不熟悉或是只熟悉 ASP.NET Web Forms 開發並且對 ASP.NET MVC 完全不了解或是尚未熟悉的人,這一篇就請先跳過。

不過 ASP.NET Web Forms 4.5 專案要加入 APS.NET MVC 4 並不是一件容易的事情,事前會有一堆的設定需要調整,在本篇文章中將會位大家說明要如何完成這些的設定。

 


2013年1月3日 星期四

令人驚艷的 Web 編輯器 - Brackets

在去年 Kevin 有介紹了一個相當好用的文字編輯器「Sublime Text 2」並且也寫了一系列的介紹文章與相關套件的使用說明,而這一系列的文章也受到了許多朋友的關注,Sublime Text 2 的相關文章流量就站了這個部落格去年流量的三分之一,ST2 的確是不可多得的編輯神器,推薦給大家使用。

而之前在某一篇 ST2 的文章後面有人提出了問題,而有網友就推薦了一個新的前端開發 IDE,起先還沒有引起我的注意,因為當時我真的很忙,所以也就沒有特別留意,

image

但是前幾天看到國外一篇文章「What's Hot in 2013: Our Picks」,其中一項就有提到了 Brackets,在看過 Jeffrey Way 的介紹過後,就對這個網頁編輯器有了很大的興趣,所以在這邊介紹給大家。

 


2013年1月2日 星期三

當選 2013 年第一季微軟「最有價值專家」!!!

是的,小弟我當選 2013 年第一季微軟最有價值專家(MVP) ASP.NET/IIS,就讓小弟以一篇文章的篇幅來發表感想。

Microsoft_MVP_logo

2013 年的第一篇文章,今年繼續努力吧!


提醒

千萬不要使用 Google Talk (Hangouts) 或 Facebook 及時通訊與我聯繫、提問,因為會掉訊息甚至我是過了好幾天之後才發現到你曾經傳給我訊息過,請多多使用「詢問與建議」(在左邊,就在左邊),另外比較深入的問題討論,或是有牽涉到你實作程式碼的內容,不適合在留言板裡留言討論,請務必使用「詢問與建議」功能(可以夾帶檔案),謝謝。