当前位置: 首页 > news >正文

网站默认地区数据修改国家信用信息企业公示系统官网

网站默认地区数据修改,国家信用信息企业公示系统官网,wordpress页面添加按钮,宁波优化seo软件公司在 ASP.NET Core 应用中#xff0c;基于 Cookie 的身份鉴权是一种常见的身份验证方式#xff0c;特别适用于传统的 Web 应用程序。Cookie 能够在用户的浏览器中存储身份验证数据#xff0c;从而在用户访问应用的不同页面时保持登录状态。 一、配置 Cookie 身份验证 首先基于 Cookie 的身份鉴权是一种常见的身份验证方式特别适用于传统的 Web 应用程序。Cookie 能够在用户的浏览器中存储身份验证数据从而在用户访问应用的不同页面时保持登录状态。 一、配置 Cookie 身份验证 首先在 Startup.cs 或 Program.cs 文件中配置 Cookie 身份验证。这包括设置登录路径、登出路径、Cookie 的过期时间等参数。 在 Program.cs 文件中配置 Cookie 身份验证 var builder WebApplication.CreateBuilder(args);builder.Services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme).AddCookie(options {options.LoginPath  /Account/Login;options.LogoutPath  /Account/Logout;options.AccessDeniedPath  /Account/AccessDenied;options.ExpireTimeSpan TimeSpan.FromMinutes(30);options.SlidingExpiration  true;}); // 安装 Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilationbuilder.Services.AddControllersWithViews().AddRazorRuntimeCompilation(); var app builder.Build();if (!app.Environment.IsDevelopment()) {app.UseExceptionHandler(/Home/Error);app.UseHsts(); }app.UseHttpsRedirection(); app.UseStaticFiles();app.UseRouting();app.UseAuthentication(); app.UseAuthorization();app.MapControllerRoute(name: default,pattern: {controllerHome}/{actionIndex}/{id?});app.Run(); 二、创建登录和登出逻辑 接下来你需要创建处理登录和登出请求的控制器和视图。 创建 AccountController 创建一个 AccountController用于处理登录和登出逻辑 using Microsoft.AspNetCore.Authentication; using Microsoft.AspNetCore.Authentication.Cookies; using Microsoft.AspNetCore.Mvc; using System.Security.Claims; using System.Threading.Tasks;publicclassAccountController : Controller {[HttpGet]public IActionResult Login(string returnUrl  /){ViewData[ReturnUrl] returnUrl;return View();}[HttpPost][ValidateAntiForgeryToken]public async TaskIActionResult Login(LoginViewModel model, string returnUrl  /){if (ModelState.IsValid){// 验证用户名和密码if (model.Username  admin  model.Password  123456){var claims  new ListClaim{new Claim(ClaimTypes.Name, model.Username),new Claim(ClaimTypes.Role, Admin)  // 可以根据需要添加角色};var claimsIdentity  new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme);var authProperties  new AuthenticationProperties{IsPersistent model.RememberMe,RedirectUri returnUrl};await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme,new ClaimsPrincipal(claimsIdentity),authProperties);return LocalRedirect(returnUrl);}else{ModelState.AddModelError(string.Empty, Invalid login attempt.);}}return View(model);}[HttpPost][ValidateAntiForgeryToken]public async TaskIActionResult Logout(){await HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme);return RedirectToAction(Index, Home);} } 创建 Login 视图 创建一个 Login.cshtml 视图用于显示登录表单 model LoginViewModelh2Login/h2form asp-actionLogin asp-route-returnUrlViewData[ReturnUrl] methodpostdiv asp-validation-summaryAll classtext-danger/divdiv classform-grouplabel asp-forUsername/labelinput asp-forUsername classform-control /span asp-validation-forUsername classtext-danger/span/divdiv classform-grouplabel asp-forPassword/labelinput asp-forPassword classform-control typepassword /span asp-validation-forPassword classtext-danger/span/divdiv classform-groupdiv classcheckboxlabel asp-forRememberMeinput asp-forRememberMe /Html.DisplayNameFor(m m.RememberMe)/label/div/divbutton typesubmit classbtn btn-primaryLog in/button /form 创建 LoginViewModel 创建一个 LoginViewModel用于绑定登录表单的数据 public classLoginViewModel {[Required][Display(Name  User name)]publicstring Username { get; set; }[Required][DataType(DataType.Password)][Display(Name  Password)]publicstring Password { get; set; }[Display(Name  Remember me?)]publicbool RememberMe { get; set; } } 三、保护 API 路由 一旦配置了 Cookie 身份验证你可以使用 [Authorize] 特性来保护你的 API 路由确保只有经过身份验证的用户可以访问受保护的资源。 [Authorize] public class ProtectedController : Controller { public IActionResult GetProtectedData(){return Ok(new { message  This is protected data });} } 四、客户端请求 客户端在请求受保护的 API 时浏览器会自动发送存储在 Cookie 中的身份验证数据。服务器会通过 Cookie 中间件验证这些数据的有效性并允许或拒绝请求。 五、登出逻辑 用户可以通过访问登出路径来登出。登出逻辑会清除用户的 Cookie从而结束会话。 [HttpPost] [ValidateAntiForgeryToken] public async TaskIActionResult Logout() {await HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme);return RedirectToAction(Index, Home); } 总结 通过以上步骤可以在 ASP.NET Core 应用中实现基于 Cookie 的身份鉴权确保你的应用能够安全地验证用户身份并授权访问特定资源。Cookie 的持久性和易于管理的特性使其成为传统 Web 应用中身份验证的理想选择。
http://www.hkea.cn/news/14375423/

相关文章:

  • 上海企业网站的建设西部数码网站管理助手 ftp上传文件失败
  • 网站建设虚线的代码wordpress 首页 函数
  • 苏州网站开发费用详情网站建设国际标准
  • 怎样删除网站虚拟主机内容苏州专业的网站建设公司
  • 用dw做教学网站asp网站转php
  • 承德网站建设咨询重庆网站建设营销
  • 做网站侵权wordpress 科技类主题
  • 永康建设投标网站广东注册公司在哪个网站申请
  • 专做腰带的网站长沙公司网络营销推广
  • 服装网站建设都有哪些沈阳模板建站系统
  • 个人网站注册名称简历模板网站有哪些
  • 网站欣赏 公司网站案例做网站有什么必要
  • 东莞哪家网站建设17网站一起做网店株洲
  • 公厂做网站需要开诚信通吗wordpress主题代码
  • 门户网站制度建设asp做的静态网站卡不卡
  • 邯郸手机建站价格临沂做商城网站建设
  • 宜城网站开发广东网站关键词排名
  • 邢台吧百度贴吧最新消息seo建站还有市场吗
  • 简述网站推广方式聊城高端网站制作
  • 海宁公司做网站分销系统合法吗
  • 网页设计与网站建设在线考试1688做网站需要多少钱
  • 网站定制报价京东自营商城官网
  • 怎么做网站界面分析建设一个企业网站需要多少钱
  • 做网站设计软件南京企业制作网站
  • 遵义网站建设公司电话建筑人才招聘网最新招聘
  • 繁体版 企业网站餐饮招商
  • 长沙百度网站制作搭建一个网上商城要多少钱
  • 网站短信验证码接口怎么做wordpress试玩app
  • 昆明学校网站建设专做运动装的网站
  • 怎么用h5做网站项目三的设计与制作