天天看點

基于 abp vNext 和 .NET Core 開發部落格項目 - 接入GitHub,用JWT保護你的API

上一篇文章(https://www.cnblogs.com/meowv/p/12924859.html)再次把Swagger的使用進行了講解,完成了對Swagger的分組、描述和開啟小綠鎖以進行身份的認證授權,那麼本篇就來說說身份認證授權。

開始之前先搞清楚幾個概念,請注意認證與授權是不同的意思,簡單了解:認證,是證明你的身份,你有賬号密碼,你可以登入進我們的系統,說明你認證成功了;授權,即權限,配置設定給使用者某一權限辨別,使用者得到什麼什麼權限,才能使用系統的某一功能,就是授權。

身份認證可以有很多種方式,可以建立一個使用者表,使用賬号密碼,也可以接入第三方平台,在這裡我接入GitHub進行身份認證。當然你可以選擇其他方式(如:QQ、微信、微網誌等),可以自己擴充。

打開GitHub,進入開發者設定界面(https://github.com/settings/developers),我們建立一個 oAuth App。

基于 abp vNext 和 .NET Core 開發部落格項目 - 接入GitHub,用JWT保護你的API
基于 abp vNext 和 .NET Core 開發部落格項目 - 接入GitHub,用JWT保護你的API

如圖所示,我們将要用到敏感資料放在

appsettings.json

{
  ...
  "Github": {
    "UserId": 13010050,
    "ClientID": "5956811a5d04337ec2ca",
    "ClientSecret": "8fc1062c39728a8c2a47ba445dd45165063edd92",
    "RedirectUri": "https://localhost:44388/account/auth",
    "ApplicationName": "阿星Plus"
  }
}
           

ClientID

ClientSecret

是GitHub為我們生成的,請注意保管好你的

ClientID

ClientSecret

。我這裡直接給出了明文,我将在本篇結束後删掉此 oAuth App