На веб-сайте весенней загрузки 2 пользователь может решить войти в систему по электронной почте / паролю (после создания учетной записи) или использовать facebook / google logi (oauth2)
На самом деле
пользователь x подключиться через Google ... выйти из системы
пользователь y, попробуйте подключиться через Google, но используйте сеанс пользователя x.
Выход из системы не осуществляется через Google ...
Я бы хотел, чтобы выход из системы поддерживал этот вариант использования
Пользователь х подключиться через гугл, выйти.
Пользователь y, нажмите, чтобы подключиться к Google, необходимо ввести имя пользователя / пароль (не хотите подключаться через прецедентного пользователя)
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.csrf().disable()
.authorizeRequests()
.antMatchers("/oauth_login", "/loginFailure", "/", "/logout")
.permitAll()
.anyRequest()
.authenticated()
.and()
.oauth2Login()
.loginPage("/oauth_login")
.authorizationEndpoint()
.baseUri("/oauth2/authorize-client")
.authorizationRequestRepository(authorizationRequestRepository())
.and()
.tokenEndpoint()
.accessTokenResponseClient(accessTokenResponseClient())
.and()
.defaultSuccessUrl("/loginSuccess")
.failureUrl("/loginFailure")
.and()
.logout()
.logoutSuccessUrl("/")
.invalidateHttpSession(true);
}
Если я удаляю .csrf (). Disable (), я получаю ошибку 403. Не понимаю почему
html logout
<a href="#" onclick="document.getElementById('logoutForm').submit();">Logout</a>
<form id="logoutForm" action="/logout" method="post">
<input hidden type="submit" value="Sign Out"/>
</form>
Редактировать
похоже, что есть много нить с этим видом ошибки ...
как этот ...
Выйти из Google учетной записи и перенаправить
похоже на проблему с токеном.
так просто опасно использовать oauth на общедоступном компьютере ...