Securityservice nunca armazena uma senha conforme digitado

FixSecurityService
Navios
17 de setembro de 2026 às 04:26 UTC
Autor
Kamo
Enviar
6fed61b

Dois escritores colocam texto simples nos usuários. Palavra de passagem. Ambos chamados User.encodePassword(), que precisa de um codificador estático que O único serviço de inicialização que alguma vez se apresentou, levou o Setter a comentar: se disponível", desde o commit inicial). Neste serviço lança, e ambos os ouvintes engoliu a exceção: - Reclamando uma conta pré-criada no /api/security/register defina a senha digitada e salve-a como digitada. A conta não foi possível iniciar sessão com ele: o fósforo PBKDF2 não consegue ler um valor que não é o seu próprio hex, por isso o login falhou com "Autenticação falhou: <a exceção do decodificador>". Agora... lojas passwordEncoder.encode(escolhido), com o codificador de plataforma injetado; sem um o registro falha. - Adicionar um membro (singly ou a granel) armazenou um substituto aleatório de 24 caracteres. Nunca ninguém lhe disse, por isso agora armazena nenhuma senha em tudo: login já recusa um hash null de forma limpa, uma reivindicação ou um reset define o real, e um cent-row bulk add não paga PBKDF2 para valores descartados. Cinco dessas linhas estavam na base de dados ao vivo 2026-09-17 (por forma; nenhum valor foi lido). Os outros escritores (RegistrationService, PasswordChangeController, RecoveryServiceImpl) sempre injetaram o PasswordEncoder. PasswordChangeController agora responde "A senha atual está incorreta" para uma conta sem senha em vez de um 500 (PBKDF2 matchs() lança no null). A linha de depuração de login que imprimiu os primeiros dez caracteres do A senha enviada desapareceu. **************** ****** define os cinco placeholders para NULL, o estado da linha do usuário do sistema é já dentro, combinando-os apenas por forma (o alfabeto placeholder, 24 caracteres, nunca assinado, não o Sistema Utilizador). Uma prévia de contagem em 2026-09-17 correspondeu a 5 e deixou 0 linhas não-hash para fora. Execute-o depois que isto for lançado. Ensaios: **************************** (a reivindicação através do verdadeiro codificador de senhasConfig: 96-hex, o login matcher aceita-o, um placeholder NULL ainda é reivindicado, uma conta ativa mantém sua senha, nenhum codificador falha ********************************** um caso PBKDF2 null-password no PassChangeAuthTest; e **************** que verifica este serviço para qualquer escrita setPassword /.password que não é codificar(...) ou null, e para qualquer chamada de encodePassword(). Cada um falha contra o seu mutante (reivindicação de texto simples, o codificador engolido Password restaurado, o guarda nulo removido). Suíte 2662: os únicos vermelhos são os cinco já em origem/principal *************X4, o catraca **********************

Todas as alterações

Como o que vês no transporte?

Tudo isso chega em seu espaço de trabalho por conta própria. Comece no plano gratuito e leia esta página novamente em um mês.

Começar Livre Para SempreVer Preços