Я добавил LinkedIn в качестве провайдера. Я без проблем ввел логин и зарегистрировался в LinkedIn. В случае использования, когда пользователь CANCELS изнутри страниц провайдера (либо при входе в систему, либо отменяет авторизацию приложения), промежуточное ПО для идентификации, по-видимому, генерирует необработанное исключение:
При обработке запроса возникло необработанное исключение.
Исключение: user_cancelled_login; Описание = Пользователь отменил вход в LinkedIn
Неизвестное местоположениеИсключение: произошла ошибка при обработке удаленного входа в систему.
Microsoft.AspNetCore.Authentication.RemoteAuthenticationHandler.HandleRequestAsync ()
System.Exception: user_cancelled_login; Описание = Пользователь отменил вход в LinkedIn
Исключение: произошла ошибка при обработке удаленного входа в систему.
Настройка провайдера при запуске определяет обратный вызов:
services.AddAuthentication().AddOAuth("LinkedIn", "LinkedIn", c =>
{
c.ClientId = Configuration["Authentication:LinkedIn:ClientId"];
c.ClientSecret = Configuration["Authentication:LinkedIn:ClientSecret"];
c.Scope.Add("r_basicprofile");
c.Scope.Add("r_emailaddress");
c.CallbackPath = "/signin-linkedin";
....
И, как я уже сказал, промежуточное ПО, похоже, обрабатывает ВСЕ другие случаи, кроме случаев, когда пользователь отменяет на страницах LinkedIn. URL возврата из LinkedIn выглядит правильно:
Но никогда не попадает в мой метод контроллера ExternalCallback, где обрабатываются другие случаи, такие как успешный вход в систему / авторизация ??
Мне интересно, работает ли это для кого-нибудь еще с поставщиками сторонних услуг?