'Unable to validate JWT signature [closed]
I'm trying to validate a JWT signature with no success.
Jwt header:
{
"kid": "rp-sign",
"alg": "PS512"
}
Exception: IDX10508: Signature validation failed. Signature is improperly formatted.
Inner exception: IDX10400: Unable to decode: 'dy7DIZFzL39V9ei8PlAj5BvNQW_GQ_xEAT0L79a9FdMfX7PMjo7rbT4FMexNBRsf-' as Base64url encoded string.
Here is my code:
private async Task GetPayloadFromSecurityToken(string securityToken, X509Certificate2 signatureCertificate)
{
var publicKey = signatureCertificate.GetRSAPublicKey();
byte[] publiKeyRaw = publicKey.ExportRSAPublicKey();
RSACryptoServiceProvider provider = new RSACryptoServiceProvider();
provider.ImportRSAPublicKey(publiKeyRaw, out _);
RsaSecurityKey rsaSecurityKey = new RsaSecurityKey(provider);
var validationParameters = new TokenValidationParameters()
{
ValidateAudience = false,
ValidateIssuer = false,
ValidateLifetime = true,
ValidateIssuerSigningKey = true,
IssuerSigningKey = rsaSecurityKey
};
var jsonHandler = new Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler();
var validationResult = jsonHandler.ValidateToken(securityToken, validationParameters);
...
}
I know that JWT is valid, but I do not know why is it not getting properly read.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
