Чтобы использовать пользовательскую аутентификацию в весенней безопасности, вы должны реализовать интерфейс UserDetailsService
и переопределить метод loadUserByUsername
, например, приведенный ниже пример
public class UserServiceImpl implements UserDetailsService{
@Autowired
private UserDao userDao;
@Override
public UserDetails loadUserByUsername(String useremail)
throws UsernameNotFoundException {
Users user = userDao.findByUserEmail(useremail);
if(user == null){
throw new UsernameNotFoundException("UserName or Password Invalid.");
}
return new org.springframework.security.core.userdetails.User(user.getUsername(), user.getPassword(), user.getEnabled(), true, true, true, getGrantedAuthorities(userDao.getUserRole(user.getUsersId())));
}
и его корректную работу длявесь веб-сайт.
что я хочу сейчас сделать - это открыть спокойный веб-сервис с того же хоста, и все запросы для этого WS будут проходить через /api/**
с другим типом аутентификации (например, с использованием токенов) возможно ли это сделать?и если да, есть ли идея, как это сделать?какие-нибудь полезные ресурсы?