Próbuję wygenerować hasło ręcznie, aby wstawić je bezpośrednio do bazy danych. Ale niestety nie działam.
Wiosenny rdzeń bezpieczeństwa jest ustawiony na użycie kodowania MD5. Generuję nowe hasło na stronie generowania skrótów md5, aktualizuję bbdd, ale nie mogę się zalogować z tym użytkownikiem.
Chyba ma jakąś specyficzną strukturę przed enklawą, ale nie wiem.
Odpowiedzi:
1 dla odpowiedzi № 1Wystarczy spojrzeć na kod źródłowy klasy basespasswordencoder.
protected String mergePasswordAndSalt(String password, Object salt, boolean strict) {
if (password == null) {
password = "";
}
if (strict && (salt != null)) {
if ((salt.toString().lastIndexOf("{") != -1) || (salt.toString().lastIndexOf("}") != -1)) {
throw new IllegalArgumentException("Cannot use { or } in salt.toString()");
}
}
if ((salt == null) || "".equals(salt)) {
**return password**;
} else {
**return password + "{" + salt.toString() + "}"**;
}
}
}