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

创欧科技 网站建设创意广告图片

创欧科技 网站建设,创意广告图片,营销型网站建设明细,中企动力员工待遇怎么样上一节我们对 Jwt 的一些基础知识进行了一个简单的介绍#xff0c;这一节我们将详细的讲解,本次我们将详细的介绍一下 Jwt在 .Net Core 上的实际运用。.Net Core 2.2Visual Studio 2017ASP.NET Core WebAPI2在上一篇文章中#xff0c;我们详细的介绍了JWT的知识#xff0c;这… 上一节我们对 Jwt 的一些基础知识进行了一个简单的介绍这一节我们将详细的讲解,本次我们将详细的介绍一下 Jwt在 .Net Core 上的实际运用。.Net Core 2.2Visual Studio 2017ASP.NET Core WebAPI2在上一篇文章中我们详细的介绍了JWT的知识这一次我们将进行一次实战的训练这一块将会有三个部分组成。分别是1.如何使用微软官方提供的库实现jwt2.如何自定义一个Jwt认证类3.使用非关系型数据库Redis对jwt信息的更新和替换当然我在后期的文章中也会讲解如何使用IdentityServer4去进行我们的权限控制。在本文中你将会学到如何使用微软官方提供的库进行Jwt的签发、验证以及权限控制。我们使用的WebApi作为演示程序。配置信息的存储通常来说我们会把数据库等等一系列的配置放在我们的appsettings.json中我们也尝试着将我们的jwt私钥等存在其中。 JwtSettings: {Issuer: admin,Audience: user,SecretKey: ahfuawivb754huab21n5n1 }当然你也可以把更多的配置放进去。然后我们用依赖注入的方法将配置文件注入到我们的类对象中。我们创建一个JwtSetting类并且在服务中进行注入。类对象 public class JwtSettings { public string Issuer { get; set; } public string Audience { get; set; }public string SecretKey { get; set; } }注入services.ConfigureJwtSettings(Configuration.GetSection(JwtSettings)); JwtSettings setting new JwtSettings();Configuration.Bind(JwtSettings, setting); JwtHelper.Settings setting;想必这里的代码大家肯定是看的轻车熟路了非常的简单。接下来我们对Jwt的签发制作一个JwtHelper类。Jwt的签发这一块你可以上网去查看权限模型的一些介绍。这里我简要的做一个介绍Claim是什么呢他就是一个用于描述一个具体的实体对象的一些描述性的字段。ClaimsIdentity就是用于指明Claim中所存储的内容的合集比如我们的身份证年龄、性别、身份证号码等就组成了我们的身份证。ClaimsPrincipal我们称为“证件当事人”也就是我们之前声明的东西的一个合计类似比如说你可能有驾照、身份证、医保卡等等而所持有这些的人就叫做ClaimsPrincipal一些代码是一个普通的结构大家可以按照这种模板进行修改模型从而创建自己的jwt结构代码: public class JwtHelper {private static JwtSettings settings;public static JwtSettings Settings { set { settings value; } }public static string create_Token(TokenPayload user){var claims new Claim[] {new Claim(ClaimTypes.Name, user.Name),new Claim(ClaimTypes.Role, user.Role),new Claim(ClaimTypes.Sid,user.Sid.ToString()) };var key new SymmetricSecurityKey(Encoding.UTF8.GetBytes(settings.SecretKey));var creds new SigningCredentials(key, SecurityAlgorithms.HmacSha256);var token new JwtSecurityToken( issuer: settings.Issuer, audience: settings.Audience, claims: claims, expires: DateTime.Now.AddDays(1), signingCredentials: creds);var Token new JwtSecurityTokenHandler().WriteToken(token);return Token; } }JWT认证在这里你可以使用我们下一节所遇到的自定义认证不过我们还是先学着使用我们最为普通的官方方法。具体的操作非常简单只需要在我们的容器service中注入一下就可以了。 services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) .AddJwtBearer(config { config.TokenValidationParameters new TokenValidationParameters { ValidateIssuer true, ValidateAudience true, ValidateLifetime true, ValidateIssuerSigningKey true, ValidAudience setting.Audience, ValidIssuer setting.Issuer, IssuerSigningKey new SymmetricSecurityKey(Encoding.UTF8.GetBytes(setting.SecretKey)) }; });这样就完成了我们的jwt认证过程。如果我们需要从token中取出我们的信息也非常的简单利用依赖注入使用C# services.AddTransientIGetInfoFromToken, GetInfoFromToken();自己创建号这两个接口和类对httpcontext进行截断从httpcontext.user中就可以直接取出我们需要的payload。当然也可以使用中间件的方式这里我们就不再用篇幅进行叙述了。原文地址https://www.cnblogs.com/WarrenRyan/p/10551630.html.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com
http://www.pierceye.com/news/675003/

相关文章:

  • 网站充值接口怎么做国家企业官网查询系统
  • 厦门网站建设工程网站备案幕布大小
  • 做家教去什么网站滕州做网站哪家好
  • 深圳市涂能装饰设计公司网站网站建设活动策划方案
  • 建设三合一网站找设计公司上哪个网站
  • 代理ip做网站流量饭店网站模板
  • 保险网站查询软件开发工程师和程序员的区别
  • 江都区城乡建设局网站马局下载app下载安卓免费
  • 网站做后台kuler 网站
  • 北京建网站公司飞沐扬中信息网
  • 商河网站建设公司南县网站建设推荐
  • 湛江企业网站建站模板网站开发 平台
  • c做的网站app开发制作专业吗
  • 杭州做网站公司做网站的文章
  • 那里有制作网站公司做网站需要了解的内容
  • 网站防护怎么做企业网站建设的ppt
  • 凡科网的网站建设好用吗wordpress在线朗读
  • 闽侯县建设局网站营销网站seo推广费用
  • 长乐区住房和城乡建设局网站测网站打开的速度的网址
  • 手机网站产品展示模板wordpress评论改成微博
  • 后盾网原创实战网站建设教程做网站和编程序
  • 东莞整站优化推广公司找火速如何做网站连接
  • 做ppt的模板的网站想学服装设计怎么入门
  • 短视频网站如何做推广网站申请域名
  • 餐饮行业网站建设风格建网站费用
  • 北京网站建设与维护石家庄做淘宝网站
  • seo网站关键词优化费用linux wordpress 伪静态
  • 朋友做的网站图片不显示不出来的网站空间哪家公司的好
  • 外贸网站建设公司价格最全做暖暖网站
  • 手机网站建设代理商怎么自己开一个网站