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; } } }
到此這篇關(guān)于C# 生成JWT的示例代碼的文章就介紹到這了,更多相關(guān)C# 生成JWT內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
通過容器擴展屬性IExtenderProvider實現(xiàn)WinForm通用數(shù)據(jù)驗證組件
這篇文章介紹了通過容器擴展屬性IExtenderProvider實現(xiàn)WinForm通用數(shù)據(jù)驗證組件的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-12-12C#中Parallel類For、ForEach和Invoke使用介紹
這篇文章介紹了C#中Parallel類For、ForEach和Invoke的使用方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-04-04