問題:
如何在ASP.NET Core 中實作基於令牌的身份驗證ASP.NET Core 應用程序,其中AngularJS 用戶端透過提供憑證來請求令牌,WebApi驗證使用者並返回訪問令牌?
答案:
1. Startup.cs 中的設定:
為 TokenAudience 和 Token🎜>
為 TokenAudience 和 TokenIs 建立常數。
為 JWT 簽章金鑰和 JwtSignInHandler 新增依賴注入服務。
設定 ASP .NET Core 使用 JWT Bearer 驗證並指定令牌驗證參數。
2.驗證設定:在需要驗證的中間件之前使用 app.UseAuthentication()。
3.授權策略:新增 AuthorizationPolicy 以指定需要 Bearer 令牌的控制器和操作。
4.建構令牌:建立一個 JwtSignInHandler 類,其中包含建構 JWT 的方法,傳入 ClaimsPrincipal。
在需要令牌的控制器中,使用 JwtSignInHandler 服務來基於主體建立令牌。
5.測試:取得令牌並使用配置中的金鑰在 jwt.io 上驗證它。
.Net Core 3.1 更新註意事項:請參閱David Fowler 的範例應用程式以取得簡化的實作JWT.
.Net Core 2 更新註意事項:雖然RSA密鑰不是必需的,但建議在分散式系統中使用它們。但是,如果分配責任,可以使用 SymmetricSecurityKey。以上是如何使用 AngularJS 用戶端在 ASP.NET Core 中實現基於令牌的身份驗證?的詳細內容。更多資訊請關注PHP中文網其他相關文章!