1.總綱
identity是微軟的一款用戶認證授權插件,比較好用,但是配置比較復雜。使用流程大致如下:
1.nuget安裝 identity插件及其以來的插件
2.修改web.config指定identity所使用的數據庫和owin啟動配置類
3.配置繼承自IdentityDbContext的數據庫上下文,配置owin的啟動類
4.用戶注冊包括 配置繼承自IdentityUser的用戶類,該類提供用戶的基本信息屬性(id,username,password,email。。。)。配置繼承自UserManager的用戶管理類,該負責用戶信息的增刪查改
5.用的授權驗證,需要除了需要上面類,還需要登陸管理類,IAuthenticationManager
2.具體步驟
1.安裝相關包
通過nuget包管理器,安裝
Microsoft.AspNet.Identity.EntityFramework
Microsoft.AspNet.Identity.OWIN
Microsoft.Owin.Host.SystemWeb
安裝完成后就可以使用identity
2.配置web.config
首先是添加數據庫連接字符串,不能有換行
其次是owin的啟動配置類
value是namespace.classname
3.配置數據庫上下文和owin類
identity的數據庫是用的是codefirst模式,所以直接聲明數據庫上下文即可
其次是設置owin配置類
該配置會將401攔截并導航至account/login
4.注冊相關
添加用戶管理類和用戶
在控制器中聲明用戶管理器
在控制器中實現簡單用戶注冊(view代碼省略)
到此,即可在IdentityDb數據庫中的dbo.AspNetUsers表中查看到新注冊的用戶
5.驗證相關
首先在控制器中聲明驗證器
其次在控制器中處理登陸
默認使用cookie,完成后即可在瀏覽器查看到cookie。