Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

394
Visualizações
¿Cómo comparar contraseñas (hashes de Bcrypt) en Symfony 3?

Al configurar una función de "cambio de contraseña" para un sitio, tengo una entrada de contraseña secundaria ( donde debe ingresar su contraseña nuevamente antes de poder cambiarla ).

Necesito poder verificar la contraseña actual del usuario ( hash usando Bcrypt ) contra la contraseña que se ingresó.

En mi acción de controlador tengo:

 $currentPassword = $request->request->get('password'); $encoder = $this->container->get('security.password_encoder'); $encodedPassword = $encoder->encodePassword($user, $currentPassword); if($encodedPassword == $user->getPassword()) { // these don't ever match. // ... }

encodePassword(...) produce un resumen de la contraseña que se ingresó, pero no es la misma que la contraseña guardada ( el texto sin formato es el mismo ), por lo que creo que se está aplicando una sal diferente y, por lo tanto, se produce la falta de coincidencia. .

Dado que Bcrypt incorpora la sal en el resumen de la contraseña, no la guardo en ningún lado.

¿Cómo puedo verificar si la contraseña de texto sin formato ingresada coincide con el resumen de Bcrypt almacenado en Symfony 3?

No estoy usando FOSUserBundle .

about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Puede comparar la contraseña de $currentPassword con la almacenada utilizando el método isPasswordValid del servicio de codificador:

$encoderService = $this->container->get('security.password_encoder')

y luego pase el objeto de usuario como primer argumento del método:

$match = $encoderService->isPasswordValid($userObject, $currentPassword)

eso devolverá true si la comparación coincide o false en caso contrario.

about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda