У меня есть приложение, использующее промежуточное ПО OWIN для OpenIdConnect. Файл startup.cs использует стандартную реализацию app.UseOpenIdConnectAuthentication. Файл cookie установлен в браузере, но с ошибкой:
IDX10311: RequireNonce является "истинным" (по умолчанию), но validationContext.Nonce имеет значение null. Функция nonce не может быть проверена. Если вам не нужно проверять nonce, установите OpenIdConnectProtocolValidator.RequireNonce на "false".
Я обнаружил, что при запуске скрипача, как и в большинстве отладочных проектов, это происходит. Ошибка возвращается, но если я вернусь на сайт, все будет работать, и мой пользователь будет аутентифицирован. Кто-нибудь видел это поведение при запуске скрипача?
С fiddler:
- SecurityTokenВведенное уведомление в OpenIdConnect выполняется дважды.
- После второго прохода через ошибку IDX10311 вызывается
- Браузер содержит действительный файл cookie, вернувшись на страницу, я могу просмотреть действительные данные User.Identity.
Работа без скрипача:
- SecurityTokenValidated выполняется один раз в OpenIdConnect
- Ошибка сброшена, продолжается загрузка действия контроллера для перенаправления после аутентификации Uri
- Cookie также действительна, а данные User.Identity верны.
Идеи? Я могу обойти это без запуска скрипача, но при отладке было бы неплохо запустить скрипач, чтобы проверить трафик.