ASP.NET Core提供了一种轻松验证Cookie的方法。它使用加密算法对Cookie进行签名,并使用默认签名密钥或自定义密钥进行验证。以下是使用ASP.NET Core验证Cookie的代码示例:
//添加Cookie验证服务 services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme) .AddCookie(options => { options.LoginPath = "/Account/Login"; options.AccessDeniedPath = "/Account/AccessDenied"; options.Cookie.Name = "MyCookie"; options.Cookie.HttpOnly = true; options.ExpireTimeSpan = TimeSpan.FromMinutes(30); options.SlidingExpiration = true; options.Cookie.SameSite = SameSiteMode.Strict; //设置加密密钥 options.Cookie.SecurePolicy = CookieSecurePolicy.SameAsRequest; });
//验证Cookie并获取用户信息 app.UseAuthentication();
//获取当前用户 var user = HttpContext.User;
//判断用户是否已验证 if (user.Identity.IsAuthenticated) { //已验证 } else { //未验证 }
使用以上代码,您可以轻松验证Cookie并获取当前已登录用户的信息。