如何: 稽核 ASP.NET Web 應用程式或 Web 服務的安全性

文章翻譯 文章翻譯
文章編號: 815144 - 檢視此文章適用的產品。
本文已封存。本文係以「現狀」提供且不會再更新。
全部展開 | 全部摺疊

在此頁中

結論

本文將逐步告訴您,如何稽核 ASP.NET Web 應用程式或 ASP.NET Web 服務的安全性。

當新的項目加入至系統 ’s 理想組態會減少系統的安全性。新的應用程式安裝、 軟體更新、 暫存組態變更及疑難排解的變更方面的系統 ’s 安全性設定。無論是有意或無意,這些變更可能會導致系統不再符合安全性需求。若要減少這種效果,執行定期稽核的系統安全性設定。文件,並評估安全性組態介紹系統的任何變更。當必要時,回復這些變更。

本文將告訴您,會影響 ASP.NET 應用程式的索引鍵的組態設定。當您第一次設定您的系統處於乾淨的狀態時,文件這些設定。執行定期稽核來比較目前的設定值與原始的設定。這些稽核可幫助您防止系統 ’s 安全性降低經過一段時間。本文不並說明如何設定這些設定。

取得更多資訊關於稽核的安全性設定項目,與.NET Framework 應用程式相關,並不是 ASP.NET 按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
815143如何: 稽核.NET Framework 組態的安全性

.NET Framework 組態項目


.NET Framework 使用檔案階層的架構來判斷套用至應用程式的原則。下列的檔案含有預設組態設定:
\ System Root \Microsoft.NET\Framework\ Version \CONFIG\Machine.config
這些設定可能由覆寫應用程式 ’s 根資料夾 (或任何子資料夾) 中一個名為 Web.config 或 ApplicationName.config 的檔案。您必須稽核所有這些檔案,以準確地評估應用程式 ’s 安全性組態。以下是組態檔案的重要的項目:
  • <trace>(特別是,啟用 屬性和 localOnly 屬性)
  • <processmodel>
  • <customerrors>
  • <authentication>(以及包含它的任何項目)
  • <identity>
  • <authorization>
  • <securitypolicy>
  • <machinekey>
  • <httphandlers>
  • <processmodel>(特別是在啟用 屬性、 使用者名稱] 屬性,而且 密碼 屬性)
  • <protocols><webservices>項目中的組態項目

檔案權限

包含與您稽核中的 ASP.NET 檔案和資料夾相關聯的 NTFS 檔案權限。這些可能會繼承自父代的資料夾或是它們可能被定義唯一的每個檔案。

若要輕鬆地稽核對大量的檔案上的權限,使用 [Cacls.exe 命令列公用程式來寫入文字檔案中的權限。每次您執行稽核、 比較此文字檔案時系統已清除,建立的檔案,然後記下的任何變更。

要寫入檔案,名為 Output.txt C:\inetpub\wwwroot\ 資料夾相關聯的所有檔案權限及所有子資料夾,請在命令提示字元執行下列命令:
CACLS C:\inetpub\wwwroot\*/T > output.txt

IIS 組態項目

Windows 2000 系統支援 ASP.NET 應用程式藉由使用網際網路資訊服務 (IIS) 5.0。您在安裝.NET Framework 時 IIS 是自動設定為支援 ASP.NET。定期稽核在 IIS 中的下列設定:
  • 應用程式對應
    若要欲應用程式的對應設定請依照下列步驟執行:
    1. 按一下 [開始],指向 [設定],然後再按一下 [控制台]
    2. 連按兩下 [系統管理工具],然後再按兩下 [網際網路服務管理員]。
    3. 虛擬伺服器或虛擬包含 ASP.NET 應用程式的資料夾上按一下滑鼠右鍵,然後按一下 [內容]。
    4. 按一下 [主目錄] 索引標籤 (或 [目錄] 索引標籤)。
    5. 在 [應用程式設定,] 下按一下 [設定]。
    6. 請注意檔案名稱副檔名對應到 Aspnet_isapi.dll 檔案。
  • 執行的權限
    若要檢視執行權限設定,請依照下列步驟執行:
    1. 按一下 [開始],指向 [設定],然後再按一下 [控制台]
    2. 連按兩下 [系統管理工具],然後再按兩下 [網際網路服務管理員]。
    3. 虛擬伺服器或虛擬包含 ASP.NET 應用程式的資料夾上按一下滑鼠右鍵,然後按一下 [內容]。
    4. 按一下 [主目錄] 索引標籤 (或 [目錄] 索引標籤)。
    5. 請注意是否有選取 [] 指令碼來源存取讀取寫入瀏覽目錄] 核取方塊。同時也請注意 Execute 使用權限 設定。

SQL Server 組態項目

Microsoft SQL Server 包含它自己的安全性機制,函式分別從.NET Framework 組態、 IIS 和 NTFS 檔案使用權限。過度寬鬆的 SQL Server 權限可能會建立一項弱點可能會用來危害私用資料的 ASP.NET 應用程式中。 您可以檢視它與 ASP.NET 相關的安全性設定為 SQL Server 的所有層面使用 SQL 企業管理員的存取。

稽核 SQL Server 組態項目

  1. 按一下 [開始],指向 [程式集]、 指向 [Microsoft SQL Server,然後再按一下 [SQL 企業管理員]。
  2. 展開您的資料庫伺服器、 展開 [安全性,然後按一下 [登入
  3. 如果 ASPNET 使用者帳戶 ASPNET 上, 按一下滑鼠右鍵,然後再按 [內容]
  4. 在 [SQL Server 登入屬性,按一下 [資料庫存取] 索引標籤]。
  5. 注意資料庫與角色已經該帳戶授與存取權限。
  6. 其中 ASPNET 帳戶具有存取權限的每個資料庫請執行下列動作:
    1. 展開資料庫],然後按一下 [使用者
    2. ASPNET,] 上按一下滑鼠右鍵,然後按一下 [內容]。
    3. 在 [資料庫使用者屬性,按一下 權限,並注意 ASPNET 使用者所有的資料表和檢視表具有權限。

?考

如需詳細資訊按一下 [下列面的文件編號,檢視 「 Microsoft 知識庫 」 中發行項]:
315736如何: 使用 Windows 安全性保護 ASP.NET 應用程式
315588如何: 安全的 ASP.NET 應用程式使用用戶端憑證

屬性

文章編號: 815144 - 上次校閱: 2014年2月27日 - 版次: 1.6
這篇文章中的資訊適用於:
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
關鍵字:?
kbnosurvey kbarchive kbmt kbwebservices kbwebforms kbweb kbconfig kbsecurity kbhowtomaster KB815144 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:815144
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com