Проверка подписи не удалась

Я использую сервер идентификации 4 с приложением Asp.net MVC 4.5.2, когда я запускаю приложение mvc, оно приходит на сервер идентификации 4 и показывает страницу входа. затем после заполнения учетных данных он проверяет учетные данные, и я перенаправлял свое приложение Mvc 5, но иногда я беру эту ошибку.

IDX10500: Signature validation failed. Unable to resolve 
SecurityKeyIdentifier: 'SecurityKeyIdentifier
(
IsReadOnly = False,
Count = 1,
Clause[0] = System.IdentityModel.Tokens.NamedKeySecurityKeyIdentifierClause
)
', 
token:
'{"alg":"RS256","kid":"20200ac5c987a7282847568c7d00dc26","typ":"JWT".
{"nbf":1487015385,"exp":1487015685,"iss":"https://localhost:44348","aud":"mvc","nonce":"636226121849994491.YTcxMjQ2ZDQtOWVlNC00MDk3LWJhOGYtYTIxNmM4OGFkZjU3NDFhODgzMWMtMmQ4OS00OTRmLWJiMzAtZWM1NzYyZjM3MTI2","iat":1487015385,"c_hash":"qzzLGWDykED_OIG0-TIF8w","sid":"174a7048a9521e2c99462e9b681553ae","sub":"c880d185-f7a1-422b-8cce-dff8142a1a3b","auth_time":1487014828,"idp":"local","amr":["pwd"]}'.

person Johan Pino    schedule 13.02.2017    source источник
comment
Вы используете временные учетные данные для подписи? Попробуйте установить сертификат X509 в IS4.   -  person leastprivilege    schedule 14.02.2017
comment
да, я использую временную подпись по умолчанию, позвольте мне попробовать X509.   -  person Johan Pino    schedule 14.02.2017
comment
@leastprivilege как я могу создать сертификат X509 ???   -  person Johan Pino    schedule 14.02.2017


Ответы (1)


Когда вы говорите «иногда», это звучит для меня так, будто вы используете параметр AddTemporarySigningCredentials в IdentityServer4.

Это означает, что новый ключевой материал будет создаваться при каждом запуске хоста.

В вашем случае приложение MVC имеет кешированную версию ключевого материала и поэтому не синхронизируется.

Попробуйте установить статические ключи - например, с использованием сертификата X509:

https://brockallen.com/2015/06/01/makecert-and-creating-ssl-or-signing-certificates/

person leastprivilege    schedule 15.02.2017
comment
У меня возникла эта проблема при переключении с локального хоста на внешний веб-сервер - токен, казалось, был кэширован, поэтому запустил режим инкогнито и все хорошо. - person levis84; 28.04.2021