Не удается прочитать созданный CyrptoJS JWT с помощью JwtSecurityTokenHandler (). ValidateToken () - PullRequest
0 голосов
/ 02 марта 2019

Я генерирую токен, используя CyrptoJS, который правильно кодирует и декодирует в тестовой форме jwt.io.Использование HMACSha256

1002 * Процесс бросает исключение:.
IDX12709: CanReadToken() returned false. JWT is not well formed: '[PII is hidden]'.
The token needs to be in JWS or JWE Compact Serialization Format. 
(JWS): 'EncodedHeader.EndcodedPayload.EncodedSignature'. 
(JWE): 'EncodedProtectedHeader.EncodedEncryptedKey.EncodedInitializationVector.EncodedCiphertext.EncodedAuthenticationTag'.

Токен получил в АФИ:. EyAiYWxnIjogIkhTMjU2IiwgInR5cGUiOiJKV1QifQ == eyAiYWN0b3IiOiAiam9uZXMiLCAibmFtZSI6ICJDYXNlRWRpdCJ9.JRi5hfqItl2gne1dUJxq1dfgdgJ1zD9xn2aUJopglbI =

1007 * код, я использую дляПроверьте токен:
public static Boolean ValidateToken(string jwtToken,  string key)
    {
        var securityKey = new SymmetricSecurityKey(Convert.FromBase64String(key));
        var validationParameters = new TokenValidationParameters()
        {
            ValidateIssuerSigningKey = true,
            IssuerSigningKey = securityKey
        };
        SecurityToken validatedToken;
        var claimPrincipal = new JwtSecurityTokenHandler().ValidateToken(jwtToken, validationParameters, out validatedToken);

        return validatedToken.ValidFrom <= DateTime.Now; 
    }

1 Ответ

0 голосов
/ 07 марта 2019

Проблема была с кодировкой из CryptoJS, которая помогла мне разобраться в этом https://www.jonathan -petitcolas.com / 2014/11/27 / creation-json-web-token-in-javascript.html Iне было URL кодирования значений.удаление =

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...