Как проверить токен JWT, созданный сторонним сайтом единого входа? - PullRequest
0 голосов
/ 30 октября 2019

У нас есть единый вход на сайт для логина и пароля. Наше приложение Angular перенаправляет на сайт IDP, а сайты проверяют с помощью логина и пароля, перенаправляет на приложение Angular. Угловые запросы приложений на токен доступа и сайт IDP возвращают токен доступа.

Поэтому мой вопрос заключается в том, как проверить этот токен jwt, сгенерированный с помощью IDP / единого входа на сайте? В моем ASP.NET Web API

                var jwtToken = tokenHandler.ReadToken(token) as JwtSecurityToken;
                if (jwtToken == null)
                    return null;

                var symmetricKey = Convert.FromBase64String(SecretKey);

                var validationParameters = new TokenValidationParameters()
                {
                    RequireExpirationTime = true,
                    ValidateIssuer = false,
                    ValidateAudience = false,
                    IssuerSigningKey = new SymmetricSecurityKey(symmetricKey)
                };


                SecurityToken securityToken;

                var principal = tokenHandler.ValidateToken(token, validationParameters, out securityToken);

В приведенном выше коде проверки у меня нет секретного ключа, я не знаю, какой секретный ключ используется IDP / Single Sign on для генерации токена.

Может кто-нибудь предложить, если секретный ключ требуется или нет. И как мне получить секретный ключ? Как проверить без секретного ключа?

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