Сегодня, без каких-либо изменений на моем реальном сайте, вход в систему с внешним логином Google нарушил работу. Это происходит только для пользователей, у которых есть логин google, другие провайдеры в порядке. Это также происходит только на реальном сайте, моя машина Dev, работающая с отладочной версией того же кода, прекрасна.AuthenticationResult.IsSuccessful начал возвращать false для google
Мой код похож на пример MVC приложение с:
public ActionResult ExternalLoginCallback(string returnUrl)
{
...
AuthenticationResult result = OAuthWebSecurity.VerifyAuthentication(Url.Action( "ExternalLoginCallback", new { ReturnUrl = returnUrl }));
if(!result.IsSuccessful)
{
return RedirectToAction("ExternalLoginFailure");
}
}
Я смотрел на result.error, который пуст.
Что-то изменилось, о чем я должен знать? Я вижу аналогичный вопрос с 4 января here. Я предполагаю, что это как-то связано с моей реализацией, а не с общей проблемой, потому что я все еще могу войти в SO, который использует мой открытый идентификатор google.
Я использую Log4Net и получаю журналы DotNetOpenAuth, но ошибок там нет, поэтому он отличается от этого answer.
Я пробовал модернизировать с 4.3.0.13117 до последнего Nuget (4.3.4.13329), но это не повлияло. Я также не могу найти тег для источника 4.3.4.13329 in the repository. Я попытаюсь загрузить и построить 4.3.0.13117, чтобы узнать, могу ли я найти причину. Единственная проблема заключается в том, что это работает на тонком тестировании на моем локальном компьютере, и я не уверен, что хочу разместить отладочные DLL на сайте.
Клиент Google в MVC4 является OpenID, а не OAuth. Даже если OAuth1 устарел, OpenID в MVC4 должен работать нормально. Также в MVC5 клиент Google использует OpenID. Я столкнулся с одной и той же проблемой, хотя и не повседневной, иногда она возникает. Я не могу перенести MVC4 в MVC5 сейчас. – user2585299
@ пользователь2585299. Проблемы были также прерывистыми для меня, но в один прекрасный день вряд ли кто-либо из пользователей Google смог бы войти в систему. Если вы обнаружите первопричину или более легкое решение, пожалуйста, напишите здесь, и я приму это, потому что это спасло бы меня много времени. – acarlon
@ user2585299 - Вы также можете посмотреть уведомление об отступлении Open ID 2.0 от Google здесь: https://developers.google.com/accounts/docs/OpenID – acarlon