C#C
C#13mo ago
Cydo

✅ JTI not being pulled from payload when I am trying to validate token

I create an access token store all the claims i want on it and get an access token and this is what the payload looks like when its decoded

Creating Access Token
    private string CreateAccessToken(ApplicationUser user, string sessionId)
    {
        var tokenHandler = new JwtSecurityTokenHandler();
        var key = Encoding.ASCII.GetBytes(_jwtSecret);

        var tokenDescriptor = new SecurityTokenDescriptor
        {
            Subject = new ClaimsIdentity(new Claim[]
            {
                new Claim(ClaimTypes.Name, user.UserName.ToString()),
                new Claim(JwtRegisteredClaimNames.Jti, sessionId),
                new Claim(JwtRegisteredClaimNames.Sub, user.Id),
            }),
            Expires = DateTime.UtcNow.AddMinutes(30),
            SigningCredentials = new(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature),
            Issuer = "https://localhost:7059",
            Audience = "http://localhost:5173"
        };

        var token = tokenHandler.CreateToken(tokenDescriptor);
        var tokenStr = tokenHandler.WriteToken(token);

        return tokenStr;
    }


{
  "unique_name": "Test",
  "jti": "SESS73ab5ea8-2c67-42a9-ba6e-96241dad5b0a",
  "sub": "bababf79-a2bc-49b3-9690-206acd714bd0",
  "nbf": 1732389177,
  "exp": 1732390948,
  "iat": 1732389177,
  "iss": "https://localhost:7059",
  "aud": "http://localhost:5173"
}
Was this page helpful?