如何解决如何为Jitsi有效负载生成JWT令牌
var securityKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(key));
var credentials = new SigningCredentials(securityKey,SecurityAlgorithms.HmacSha256);
var permClaims = new List<Claim>();
permClaims.Add(new Claim("aud","jitsi"));
permClaims.Add(new Claim("iss","8B23A4BA85DE85D2922703F319496934"));
permClaims.Add(new Claim("sub","artaticsxauuio.com"));
permClaims.Add(new Claim("room","jd"));
//Create Security Token object by giving required parameters
var token = new JwtSecurityToken(issuer,//Issure
issuer,//Audience
permClaims,expires: DateTime.Now.AddHours(1),signingCredentials: credentials);
var jwt_token = new JwtSecurityTokenHandler().Writetoken(token);
先谢谢您。我正在为JITSI构建它。
解决方法
这对我有用。
using System.IdentityModel.Tokens.Jwt;
----------------------------------------------------------------------
string key = @"secret-key";
var securityKey = new Microsoft.IdentityModel.Tokens.SymmetricSecurityKey(Encoding.UTF8.GetBytes(key));
var credentials = new Microsoft.IdentityModel.Tokens.SigningCredentials(securityKey,"HS256");
var header = new JwtHeader(credentials);
JwtPayload payload = new JwtPayload();
payload.AddClaim(new System.Security.Claims.Claim("context","{'user': { 'name': 'username','email': 'email' }}",JsonClaimValueTypes.Json));
payload.AddClaim(new System.Security.Claims.Claim("iss",@"app-key"));
payload.AddClaim(new System.Security.Claims.Claim("aud","meet.jitsi.com"));
payload.AddClaim(new System.Security.Claims.Claim("sub","meet.jitsi.com"));
payload.AddClaim(new System.Security.Claims.Claim("room","TestRoom"));
var secToken = new JwtSecurityToken(header,payload);
var handler = new JwtSecurityTokenHandler();
var tokenString = handler.WriteToken(secToken);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。