Невозможно проверить Google oAuth JWT в C# - PullRequest
0 голосов
/ 28 января 2020

Я пытаюсь проверить токен JWT вручную, но я не могу это сделать. Вот мой код

 public async Task<IActionResult> GoogleJWT(string jwt, string returnUrl = null)
        {
            returnUrl = returnUrl ?? Url.Content("~/");
            if (string.IsNullOrEmpty(jwt))
            {
                return RedirectToAction("SignUpEmail");
            }


            var parameters = new TokenValidationParameters
            {
                ValidIssuer = "accounts.google.com",
                ValidAudience = "XXXXXXXXXX.apps.googleusercontent.com",
                IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("secret")),
                ValidateIssuerSigningKey = true
            };

            var handler = new JwtSecurityTokenHandler();
            handler.InboundClaimTypeMap.Clear();

            var user = handler.ValidateToken(jwt, parameters, out var _);


            return View();

        }

Это показывает эту ошибку:

An unhandled exception occurred while processing the request.
SecurityTokenSignatureKeyNotFoundException: IDX10501: Signature validation failed. Unable to match keys:

Я не уверен, что Эмитент или Аудитория правы?

...