成員資格和角色管理
對於大多wed應用程序而言,身份驗證和授權管理是非常重要的部分。是對wed應用程序的安全起着重要的保護作用。
認證是確定用戶身份的過程,在用戶通過身份驗證後可以確定該用戶是否有權繼續操作。如果沒有進行身份驗證,就不能進入實體授權。
授權是確定已驗證的用戶是否有權訪問應用程序中的某個部分,某個點或只訪問應用程序提供的特定數據集。
1.ASP.NET的安全模式的重要性:
ASP.NET自己不執行身份驗證,完全依賴IIS身份驗證,匿名用戶可以使用默認ASP.NET賬戶訪問資源。一,是構造特殊的鏈接地址,導致文件內的數據泄露
二,數據庫泄漏
三,安全模式的首要策略就是所有的HTTP訪問都要經過IIS,限制IIS的安全性是關鍵
ASP.NET有4種授權方法:
windows:依賴IIS驗證,在內聯網中作用很大。
passport:微軟集中式身份驗證,一次登錄可訪問所有站點,需付費。
From:窗體驗證,窗體帳號密碼登錄,現在最方便和主要的驗證方式。(主要學習運用From驗證)
None:自己不執行身份驗證,完全依賴IIS身份驗證。
From窗體驗證
允許用戶訪問整個應用程序其特定資源的一種流行模式。
IIS接收請求,但不進行處理,而是傳遞給ASP.NET應用程序。
From窗體驗證的主要屬性
明文一般登陸方式
首先對網站根目錄Wed.config進行配置
將<authentication mode="Windows" />給註釋掉再換行重新寫一行<authentication mode="Forms" />
再創建一個登錄窗體和管理員界面窗體
引用using System.Web.Security;
在登陸的界面後臺寫登錄代碼
將賬戶和密碼放在配置文件中
在from驗證後面加上<credentials passwordFormat="Clear">節點。
可以添加登錄的賬戶和密碼<user name="admin" password="mima"/>
name是賬戶,password爲密碼;
對密碼進行加密登錄:
在Wed.config中配置文件<credentials passwordFormat="MD5"> 設置成MD5加密登錄
password="21232F297A57A5A743894A0E4A801FC3"/>則是密碼加密後的字符串。
對用戶進行授權和配置
在站點根目錄中Wed.config進行授權配置
2.成員資格管理
Membership類:(主要用與驗證用戶憑據並管理用戶設置)
創建和管理用戶
將成員信息儲存在SQL Server數據庫中。
對訪問點進行身份驗證
管理密碼,包括創建,更改,檢索和重置密碼等
Membership類的屬性和方法
配置Wed.config文件
在Visual Studio命令提示符中創建數據庫