最近工作中遇到一個需求,需要在ASP.NET Core中來實現一個基礎的身份認證,下面這篇文章主要給大家介紹了關於ASP.NET Core中實現使用者登入驗證的最低配置的相關資料,需要的朋友可以參考借鑒,下面來一起看看吧。
前言
本文主要給大家介紹了關於ASP.NET Core使用者登入驗證的最低配置的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹:
背景是在一個項目中增加臨時登入功能,只需驗證使用者是否登入即可,所需的最低配置與實現代碼如下。
方法如下:
在 Startup 的 ConfigureServices() 方法中添加 Authentication 的配置:
services.AddAuthentication(options =>{ options.DefaultAuthenticateScheme = CookieAuthenticationDefaults.AuthenticationScheme; options.DefaultChallengeScheme = CookieAuthenticationDefaults.AuthenticationScheme;}).AddCookie();
在 Startup 的 Configure() 方法中將 Authentication 添加到請求管線:
app.UseAuthentication();
在登入程式中驗證通過使用者名稱/密碼後,通過下面的代碼產生登入 Cookie 並發送給用戶端:
var claimsIdentity = new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.Name, model.Email) }, "Basic");var claimsPrincipal = new ClaimsPrincipal(claimsIdentity);await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, claimsPrincipal);
總結