Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

[Dúvida] Onde criar o hashing Bcrypt?

Olá!

Onde criar esse hashing de senha Bcrypt? Existe alguma ferramenta?

No aguardo...

5 respostas

Olá, João!

Para implementar o hashing de senha usando Bcrypt no seu projeto Spring Boot, você deve fazer isso no serviço de cadastro de usuário, mais especificamente no momento em que a senha do usuário é salva no banco de dados.

Aqui está um exemplo prático de como você pode fazer isso:

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;

@Service
public class UsuarioService {

   @Autowired
   private PasswordEncoder passwordEncoder;

   @Autowired
   private UsuarioRepository usuarioRepository;

   public void salvarUsuario(String login, String senha) {
       String senhaCriptografada = passwordEncoder.encode(senha);
       Usuario usuario = new Usuario(login, senhaCriptografada);
       usuarioRepository.save(usuario);
   }
}

Nesse exemplo, ao salvar um novo usuário, a senha é criptografada usando Bcrypt antes de ser persistida no banco de dados.

Espero ter ajudado e bons estudos!

Olá Rodrigo!

É aquela parte quando você está no Terminal logado no MySQL e você adiciona um usuário. Você já tinha copiado e colou o hashing referente à senha. Minha dúvida é onde transformo a senha do usuário nesse hashing...

Já que não é uma boa prática inserir a senha direto no Banco de Dados.

No aguardo,

João

Se você quiser gerar uma manualmente, pode instanciar a classe do Spring e dar um System.out:

System.out.println(new BCryptPasswordEncoder().encode("SUA SENHA AQUI"));

Onde insiro esse código que você passou para obter o hashing da senha? No Usuario Service?

Obrigado e no aguardo

solução!

Se você estiver precisando apenas gerar um hash rapidamente para salvar no banco, coloca essa código na classe main do projeto. Quando rodar a aplicação, olha no console o hash impresso e copie. Depois disso, apague o código da classe main.