Как правильно использовать remember me и Oauth2 в Spring Security?

Здравствуйте,
После регистрации на сайте авторизую пользователя и записываю remember-me обычным способом:
// Биним в конфигурации
@Bean
public TokenBasedRememberMeServices rememberMeServices() {
    TokenBasedRememberMeServices rememberMeServices
                = new TokenBasedRememberMeServices("123", basicUserDetailsService);
    return rememberMeServices;
}

// Используем при регистрации
@Autowired
private TokenBasedRememberMeServices rememberMeServices; 
 
UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());
token.setDetails(new WebAuthenticationDetails(request));
SecurityContextHolder.getContext().setAuthentication(token);
rememberMeServices.loginSuccess(request, response, token);


Проблема в том, что на сайте есть авторизация через ВК, соответственно нужно реализовать новый implements UserDetailsService и в нем передать vkId под видом username, но мне этот способ кажется ну очень корявым. Еще придется бинить два TokenBasedRememberMeServices.

Проясните как правильно сделать? Реализовывать свой rememberMeServices? Но там не хило так реализовывать придется
  • Вопрос задан
  • 684 просмотра
Пригласить эксперта
Ответы на вопрос 1
unitby
@unitby
Наследовать rememberMeServices добавив только нужный функционал а не реализовывать его весь никак?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы