Erro spring security

Estou recebendo este erro quando tento logar na aplicacao:
Cannot invoke “org.springframework.security.core.userdetails.UserDetails.getAuthorities()” because “user” is null

Você tem uma variável user que não foi inicializada :man_shrugging:

No spring security vc precisa criar uma classe que implemente UserDetailsService, além de de implementar o método loadUserByUsername(String username), que deverá retornar um UserDetails.

A ideia é que através do username recebido como parâmetro vc busque o usuário no seu banco de dados e crie um org.springframework.security.core.userdetails.User, configurando o username e password.

Mais ou menos isso:

@Service
public class UsuarioService implements UserDetailsService {

    @Autowired
    private UsuarioRepository userRepository;

    @Override
    public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
        Usuario user = userRepository.findByUsername(username)
                .orElseThrow(() -> new UsernameNotFoundException("User not found with username: " + username));

        return new org.springframework.security.core.userdetails.User(
                user.getUsername(), 
                user.getPassword(), 
                new ArrayList<>()
        );
    }
}