ASP.NET MVC Identity 介紹

Preview:

Citation preview

輕鬆搞定神⼀一般強⼤大的ASP.NET Identity

多奇數位創意有限公司 實習⽣生 ⺩王致平 Eric

ASP.NET Identity是幹嘛的?

全新的⼀一套⾝身份驗證系統

結合了OAuth、Membership

Facebook, Google 登⼊入 都幫你搞定 別⼀一天到晚看⽂文件了

⼀一套擁有多重⾝身份驗證的 Web Application 將不會是夢

輕鬆擴充功能 搭配Email+SMS

啊!還有⾓角⾊色權限控制

當我們開啟了Sample Code

今晚的我沒有極限

為什麼要⽤用Identity?

不管你是寫 ASP.NET , PHP,……….

都會注意到... 只是寫個簡單的登⼊入很容易

當遇到...

⼜又是⼀一個沒有極限的⼀一晚

原先的Schema已經夠煩了 然後還來這個OAO...

先回顧⼀一下歷史!

ASP.NET Membership A.D. 2005…Too Ancient

ASP.NET Simple Membership

這是什麼結構啊…

ASP.NET Universal Provider 搭配Code First,沒有OWIN

ASP.NET Identity 1.0

ASP.NET Identity 2.0

聽說上個⽉月出了2.2.0-alpha... (還有新功能?

BUG FIXED

輕鬆擴充欄位、更物件導向

OWIN是幹嘛的?

據說可以抽換東⻄西

Code First是什麼

IdentityUser

//Add Custom Column

Claims Email Id

Logins PasswordHash Roles

PhoneNumber SecurityStamp UserName

ClaimsIdentity ⾃自訂資料的好幫⼿手 有種NoSQL的設計

UserManager

ChangePasswordAsync

CreateAsync(user)

CreateAsync(user,pass)

DeleteAsync FindAsync FindByIdAsync

FindByNameAsync UpdateAsync Users

AuthenticationManager

RoleManager

Register + Login

Create Roles

SetRole+Authorize(Role=“A”)

AddClaim+ClaimsAuthorize

Email Validation Oh…I Forgot Password

Facebook Login Just A Piece Of Cake

Nuget

Install-Package Microsoft.Owin.Security.Facebook

I got a key

Nuget

Install-Package Microsoft.AspNet.Identity.EntityFramework

Install-Package Microsoft.AspNet.Identity.OWIN

Install-Package Microsoft.Owin.Host.SystemWeb

update-package

Let’s Set Up an Empty Project with Identity