C# 生成JWT的示例代码
更新时间:2024年04月02日 10:09:21 作者:Mr_Xul
这篇文章主要介绍了C# 生成JWT的示例代码,需要的朋友可以参考下
C# 生成JWT的代码如下所示:
using Microsoft.IdentityModel.Tokens; using System.IdentityModel.Tokens.Jwt; using System.Security.Claims; using System.Text; namespace Demo { /// <summary> /// Token处理类 /// </summary> public class Token { /// <summary> /// 生成JWT /// </summary> /// <param name="user"></param> /// <param name="secretKey"></param> /// <param name="issuer"></param> /// <param name="audience"></param> /// <param name="expiryMinutes"></param> /// <returns></returns> public static string GenerateJwt(User user, string secretKey, string issuer, string audience, int expiryMinutes) { var securityKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(secretKey)); var credentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256); var claims = new[] { new Claim(ClaimTypes.Name, user.Username), new Claim(ClaimTypes.Role, user.Group.ToString()), }; var token = new JwtSecurityToken( issuer: issuer, audience: audience, claims: claims, expires: DateTime.UtcNow.AddMinutes(expiryMinutes), signingCredentials: credentials ); var tokenHandler = new JwtSecurityTokenHandler(); var jwtToken = tokenHandler.WriteToken(token); return jwtToken; } } }
到此这篇关于C# 生成JWT的示例代码的文章就介绍到这了,更多相关C# 生成JWT内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
通过容器扩展属性IExtenderProvider实现WinForm通用数据验证组件
这篇文章介绍了通过容器扩展属性IExtenderProvider实现WinForm通用数据验证组件的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-12-12C#中Parallel类For、ForEach和Invoke使用介绍
这篇文章介绍了C#中Parallel类For、ForEach和Invoke的使用方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-04-04
最新评论