Login em dois projetos - resolvido

No spring tenho um micro servico que faz o login. Tenho dois projetos em angular que faz autenticação neste micro servico.

package br.com.ghnetsoft.gestaovendasatendimento.oauth.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;

import br.com.ghnetsoft.gestaovendasatendimento.model.Usuario;
import br.com.ghnetsoft.gestaovendasatendimento.oauth.config.MyUserDetails;
import br.com.ghnetsoft.gestaovendasatendimento.repository.UsuarioRepository;

@Service
public class MyUserDetailsService implements UserDetailsService {

    @Autowired
    private UsuarioRepository usuarioRepository;

    @Override
    public UserDetails loadUserByUsername(final String username) {
        final Usuario usuario = usuarioRepository.existeUsuarioComEmailAndTipoUsuario(username, null);
        if (usuario == null) {
            throw new UsernameNotFoundException("Usuário ou senha inválidos !");
        }
        return new MyUserDetails(usuario);
    }
}

No header de autenticação do angular, posso enviar o tipo de usuário, mas como pegar o header neste parte do código ?

Porque podem ter emails iguais nos dois sistemas

Uma forma de acessar a request é por injeção:

@Autowired
private HttpServletRequest request;
1 curtida

Fiz isto, para pegar o header, e funcionou.

Só que agora deu este problema: setHeaders

O problema foi resolvido conforme informado aqui: setHeaders - resolvido - #13 por guilhermebhte

1 curtida