Asp.net2.0技術內幕(讀書筆記三)安全性

來源:互聯網
上載者:User

      安性不可以添加到現有應用程式或在開發階段後期引入.安全性生來就與應用程式的功能相聯絡,應當在設計階段的早期作為最早的特徵之一加以規劃。
      最安全的Web應用程式是真正能抵制攻擊的應用程式,而不是只是從設計上能這麼做的應用程式。安全性是一個非常複雜的難題,其解決方案因應用程式的不同而不同。安全性通常是通過應用程式級和系統級措施的成功結合而實現的。
      ASP.NET提供了一個內建的基礎結構,在應用程式級保護Web頁面不受未授權的訪問。而這種安全性只是問題的一面,還要防止伺服器攻擊。
 (一)安全的來源
跨網站指令碼攻擊(Cross-site scripting,XSS):不受信任的使用者輸入被回送到該頁面。
拒絕服務(Denial of Service,DoS):加大請求,使系統過載。
竊聽:使用嗅控器。
隱藏欄位篡改。
單鍵攻擊。
會話攔截。
SQL代碼注入。
敏感性資料不能通過電線發送,必須安全的儲存在伺服器上。
措施:
      編碼實踐:資料驗證、類型和緩衝區長度檢驗以及反篡改措施。
      資料訪問:使用角色及預存程序。
      有效儲存和管理:不發關鍵資料到用戶端,使用Hash代碼檢測操縱,驗證使用者和保護身份,以及用嚴格的密碼原則。
只有開發人員、架構師和管理員共同努力才能構建一個安全的系統。
(二)asp.net的安全上下文
         從應用程式的角度看,安全性主要是一個難使用者身份和授權對系統資源的的行動的事情。Asp.NET的安全上下文有一個不同層級組成:
         1、IIS級
         2、Asp.NET背景工作處理序級,確定Asp.NET背景工作處理序中服務要求的線程的身份。
         3、Asp.NET管道級
當一個Asp.NET請求到達Web 服務器時,IIS擷取請求並把它分配給一個pooled線程。IIS運行機制在SYSTEM帳戶下——Microsoft Windows中最強的帳戶。從此時候起執行三個層級的安全性。
         (1)IIS安全執行緒上下文
根據當前的IIS身分識別驗證設定假冒一個身份:基本驗證、摘要身分識別驗證、整合windows身分識別驗證或匿名驗證。
            匿名:使用者名稱為IUSR_xxx,其中xxx代表機器名。
            基本驗證是任何瀏覽器幾乎都有支援的一個HTTP標準。建議只在HTTPS安全通道上使用基本驗證。
            摘要式驗證在發送使用者憑證前對它進行散列處理。是HTTP1.1的一個特徵,並非所有瀏覽器都支援。Win2003不要求把可還原的加密把密碼儲存到伺服器上。
            基本驗證和摘要身分識別驗證通過防火牆和Proxy 伺服器可以很好地起作用。
            整合windows驗證建立瀏覽器和Web伺服器之間的會話。不可用於有防火牆的情況下。
            基於認證的身分識別驗證。
             
            

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.