У меня есть приложение, в котором я использую социальную аутентификацию / авторизацию, используя провайдеров аутентификации, таких как Google / Facebook.
Вход успешно выполняется, когда я аутентифицируюсь / авторизируюсь с помощью Facebook (пример) и генерирую токен JWT при успешной аутентификации.
Но, когда во время выхода - я выхожу из приложения, но социальный вход сохраняется сеанс, и я не могу войти в систему под учетной записью другого пользователя Facebook.
клиентская сторона angular выход из системы, удаление маркера доступа из localStorage
logout() {
// remove user from local storage to log user out
localStorage.removeItem('accessToken');
}
Spring oauth2 конфигурации
@Override
protected void configure(HttpSecurity http) throws Exception {
http
......
.oauth2Login()
.loginPage("/login")
.authorizationEndpoint()
.baseUri("/oauth2/authorize")
.authorizationRequestRepository(cookieAuthorizationRequestRepository())
.and()
.redirectionEndpoint()
.baseUri("/oauth2/callback/*")
.and()
.userInfoEndpoint()
.userService(customOAuth2UserService)
.and()
.successHandler(oAuth2AuthenticationSuccessHandler)
.failureHandler(oAuth2AuthenticationFailureHandler);
}
Есть ли способ, которым я могу отозвать токен / сделать токен недействительным, чтобы мое приложение запросило аутентификацию, чтобы другой пользователь мог войти в систему.
Любая помощь или ссылка на документы по этому вопросу приветствуются