Здравствуйте,
После регистрации на сайте авторизую пользователя и записываю 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? Но там не хило так реализовывать придется