2009年12月13日 星期日

保護網站的 mdb 檔

Introduction

本文說明如何保護網站上的 mdb 檔。

Tested on WinXP/IIS5.1 and Win2003/IIS6.0.

Hightlights

本文討論下列項目:

  • 設定 IISASP.NET Web.config 保護 mdb 檔

看完本文後,你將可以完成下列工作:

  • 使用 IIS/ASP.NET 保護 mdb 檔,避免讓人利用 Browser 取得含有重要機密的 mdb 檔

保護 mdb 檔

保護 mdb 檔涉及下列工作:

  • Task 1, 設定 IIS 的 .mdb 副檔名對應到 ASP.NET ISAPI
  • Task 2, 設定 ASP.NET 將 .mdb 對應到 HttpForbiddenHandler HTTP handler
Task 1, 設定 IIS 的 .mdb 副檔名對應到 ASP.NET ISAPI
  • 啟動 IIS
  • 點選網站,在要設定的網站專案上,按滑鼠右鍵>內容>主目錄,IIS 的設定視窗就會顯示在畫面上,如下圖:

image

  • 按下應用程式設定值中點設定(G)…鈕, 應用程式設定視窗就會顯示在畫面上,如下圖:

image

  • 在應用程式副檔名 ListView 中,點 .aspx 副檔名,點編輯鈕,新增/編輯應用程式副檔名對應 Dialog 就會顯示在畫面上,如下圖:

image

  • 執行檔欄位中的內容複製到剪貼簿,按取消鈕關閉視窗
  • 新增鈕,新增/編輯應用程式副檔名對應 Dialog 就會再顯示在畫面上,這次在執行檔欄位中貼上剪貼簿中的資料,在副檔名欄位中輸入 mdb(WinXP IIS5.1 須輸入 .png),如下圖:

image

  • 按下確定 關閉 IIS

Task 2, 設定 ASP.NET 將 .mdb 對應到 HttpForbiddenHandler HTTP handler
  • 打開檔案總管
  • 編輯網站根目錄下的 Web.config (若根目錄下沒有 Web.config,請自行建立檔案)
  • 在 system.web 元素下加入底下 httpHandlers 三行設定:
  • 關閉並儲存 Web.config
測試下載 mdb
  • 放一個 mdb 檔到網站根目錄下,例如 Sample.mdb
  • 打開 Browser, 在網址列輸入 http://localhost/Sample.mdb 並按下 Enter
  • 如下圖,若 Browser 視窗有出現 “不服務此類型頁面…副檔名 '.mdb' 可能不正確” 的訊息,代表 mdb 的保護設定有成功執行:

image

備註

  • 我 WinXP/IIS5.1 用的 .NET 版本是 v2.0.50727,實測的結果,「Task2, 設定 ASP.NET 將 .mdb 對應到 HttpForbiddenHandler HTTP handler」這個步驟不做也是可以的。

參考資料

0 意見: