2016-07-05 7 views
0

Ich versuche BCrypt Passwortverschlüsselung mit Spring Security zu implementieren. Aus irgendeinem Grund schlägt die Passwort-Validierung für ein gültiges Passwort fehl. Das Passwort wurde in derselben App erstellt und übergibt die Authentifizierungsprüfung, wenn ich es in einem Komponententest fest codiere. Aus irgendeinem Grund schlägt es fehl, wenn es auf dem Server ausgeführt wird. Ich habe überprüft, dass es die gleiche JRE verwendet, die gleiche Anzahl von Iterationen (im Hash gespeichert). Ich habe versucht, es auf das Minimum an Code zu reduzieren, um herauszufinden, was falsch ist. Ich bin an der Stelle fest, wo diese Aussage:BCrypt Authentifizierung fehlgeschlagen

BCrypt.checkpw("password123", "$2a$10$kyRMcxNqagw.ny369X4AsumV4cvHt4Usfvm.rGNDRnxP2SLKioFhu") 

gibt true zurück, wenn sie in einer Unit-Test laufen, aber schlägt fehl, wenn in meinem PasswordEncoder leben auf dem Server ausgeführt. Irgendwelche Ideen, warum das scheitert?

Antwort

0

Ich habe meinen Fehler herausgefunden. Zu einem bestimmten Zeitpunkt konvertierte unser Code Passwörter in Großbuchstaben. Ich habe es an einigen Stellen entfernt, aber einen verpasst. Das Vergleichen aller Groß- und Kleinbuchstaben mit dem Groß- und Kleinbuchstaben-Passwort ist fehlgeschlagen (wie zu erwarten wäre).

Verwandte Themen