Microsoft.AspNet.Identity是微軟在MVC 5.0中新引入的一種membership框架,和之前ASP.NET傳統的membership以及WebPage所帶來的SimpleMembership(在MVC 4中使用)都有所不同。
Microsoft.AspNet.Identity是符合微軟開放Owin標準里面Security標準的一種實現。且在MVC 5中默認使用EntityFramework作為Microsoft.AspNet.Identity的數據存儲實現。
ASP.NET Identity是在.NET Framework4.5中引入的,從Membership發布以來,微軟已經從開發者以及企業客戶那里面得到了足夠的反饋信息來幫助他們打造這樣一套新的框架。他所擁有的特點大多也是前面所不能滿足的,有下列特性,詳細內容參見 ASP.NET Identity 簡介:
- 一套ASP.NET Identity,可以用于ASP.NET下的web form, MVC, web pages, web API等
- 和Simple Membership Provider,可以靈活訂制用戶信息,同樣采用EF Code First來完成數據操作
- 完全自定義數據結構
- 單元測試的支持
- 與Role Provider集成
- 支持面向Clamis的認證
- 支持社交賬號的登錄
- OWIN 集成
- 通過NuGet發布來實現快速迭代
ASP.NET Identity V1 有一個不夠完美地方是主鍵必須是string 類型。ASP.NET Identity V2可以用任何類型作為主鍵了,而且接口還有一個泛型參數,TKey可以是任何類型(int, Guid等等),同時還增加了下列接口。
- IUserLockoutStore<User, TKey>: 在嘗試一定的失敗次數后允許鎖定一個賬號
- IUserEmailStore<User, TKey>: 使用郵件地址做確認 (例如通過郵件進行確認)
- IUserPhoneNumberStore<User, TKey>: 使用手機號碼做確認(例如通過短信進行確認)
- IUserTwoFactorStore<User, TKey>: 啟用2中途徑進行安全驗證 (例如通過用戶名/密碼和通過郵件或者短信的令牌),當用戶密碼可能存在不安全隱患的時候,系統會以短信或郵件的方式向用戶發送安全碼
SQL Database Project for ASP.NET Identity 2.0
MVC5 - ASP.NET Identity登錄原理 - Claims-based認證和OWIN
MVC使用ASP.NET Identity 2.0實現用戶身份安全相關功能,比如通過短信或郵件發送安全碼,賬戶鎖定等
ASP.NET Identity 2新增雙重認證、帳號鎖定、防偽印章功能并修復了一些bug
Securing ASP.NET MVC Applications with ASP.NET Identity
asp.net identity 2.2.0 中角色啟用和基本使用(一)
asp.net identity 2.2.0 中角色啟用和基本使用(二)
文章列表