ASP.NET應用程式安全控制的作用及原理

來源:互聯網
上載者:User
asp.net|安全|程式|控制     作為Web伺服器,就是向瀏覽者友好的提供反饋資訊。如果訪問者按照網路服務的規則,以合理身份和合理的許可權提交資料訪問請求,那麼互動關係就會顯得順理成章。但是事實上並非這麼簡單,正如世界上的交通一樣,並非所有的車輛都是按照規定行道來行駛,總會有些有意無意的訪問是不合規則(不合法)的。因此網路應用程式安全問題顯得尤為重要。

  我們知道Web應用程式提供的服務是可以通過世界上任意一台可以連到互連網的電腦來訪問。而在連結路徑上的任意位置都可能存在資料攔截,但是我們卻是很難確定使用者的位置。這些不合規則的訪問會不同程度地給伺服器造成影響,輕者造成伺服器響應出錯,重者泄漏其他機密資訊或是造成伺服器癱瘓。而我們最害怕的是後者,試想:記錄客戶信用卡帳號的資訊被盜竊,線上證券的伺服器被攻擊癱瘓等等,這是多麼可怕的事情呀。而這些危害安全的非法訪問都是利用漏洞的,無論是網路的漏洞,還是Web應用程式的漏洞,如果不進行嚴密的安全控制,帶來的損失往往是難以估量的,但是我們可以從安全控制上來最大可能的減少這種事情的發生。Web應用程式的安全和網路安全是兩碼事,但都是至關重要的。這裡我們主要介紹關於ASP.NET中Web應用程式的安全控制。

  任何成功的應用程式安全性原則的基礎都是穩固的身分識別驗證和授權手段,以及提供機密資料的保密性和完整性的安全通訊。在維護Web應用程式的安全控制中,我們普遍使用的是身分識別驗證技術。身分識別驗證(authentication)是一個標識應用程式用戶端的過程,這裡的用戶端可能包括終端使用者、服務、進程或電腦,通過了身分識別驗證的用戶端被稱為主體(principal)。身分識別驗證可以跨越應用程式的多個層發生。終端使用者起初由Web應用程式進行身分識別驗證,通常根據使用者名稱和密碼進行;隨後終端使用者的請求由中介層應用程式伺服器和資料庫伺服器進行處理,這過程中也將進行身分識別驗證以便驗證並處理這些請求。

  ASP.NET 與 IIS、.NET 架構和作業系統所提供的基礎安全服務配合使用,共同提供一系列身分識別驗證和授權機制,如圖12.1示範了這些組件之間如何相互配合,共同完成安全控製作用的。


圖 12.1 ASP.NET安全服務體系

  做為Web程式員來講,我們更關心的是身分識別驗證和授權的安全控制階段。ASP.NET的身分識別驗證提供者包括表單(Forms)份驗證(也稱為表單驗證)、Windows身分識別驗證、護照(Passport)身分識別驗證和無驗證(None),共4種。當通過身分識別驗證後,ASP.NET會檢查是否啟用身份類比。如果啟用,ASP .NET 應用程式使用用戶端標識以用戶端的身份有選擇地執行。否則,ASP.NET應用程式使用本機身份標識運行(一般使用原生ASPNET帳號),具體流程如下圖所示:


圖 12.1 身分識別驗證流程

  本章中,我們將詳細介紹平時常用的並且用以實現的表單身分識別驗證和Windows驗證。在學習這兩種驗證之前,我們有必要先瞭解一下Web.config檔案。

相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

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

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