在ASP.NET Core中實現(xiàn)一個Token base的身份認(rèn)證

以前在web端的身份認(rèn)證都是基于Cookie | Session的身份認(rèn)證, 在沒有更多的終端出現(xiàn)之前,這樣做也沒有什么問題,
但在Web API時代,你所需要面對的就不止是瀏覽器了,還有各種客戶端,這樣就有了一個問題,這些客戶端是不知道cookie是什么鬼的。 (cookie其實是瀏覽器搞出來的小貓膩,用來保持會話的,但HTTP本身是無狀態(tài)的, 各種客戶端能提供的無非也就是HTTP操作的API)

而基于Token的身份認(rèn)證就是應(yīng)對這種變化而生的,它更開放,安全性也更高。

基于Token的身份認(rèn)證有很多種實現(xiàn)方式,但我們這里只使用微軟提供的API。

接下來的例子將帶領(lǐng)大家完成一個使用微軟JwtSecurityTokenHandler完成一個基于beare token的身份認(rèn)證。

注意:這種文章屬于Step by step教程,跟著做才不至于看暈,下載完整代碼分析代碼結(jié)構(gòu)才有意義。

前期準(zhǔn)備

創(chuàng)建項目

在VS中新建項目,項目類型選擇ASP.NET Core Web Application(.NET Core), 輸入項目名稱為CSTokenBaseAuth

Coding

  • 創(chuàng)建一些輔助類

    在項目根目錄下創(chuàng)建一個文件夾Auth,并添加RSAKeyHelper.cs以及TokenAuthOption.cs兩個文件

    • 網(wǎng)友評論