Skip to content

Commit 42335ee

Browse files
committed
fix(deps): update PasswordPolicyService for Passay 2.0 API changes
Passay 2.0 reorganized packages (rules under org.passay.rule, character data under org.passay.data), made PasswordValidator an interface with DefaultPasswordValidator impl, and changed validate() to return ValidationResult with getMessages() directly on the result.
1 parent 824f6a7 commit 42335ee

1 file changed

Lines changed: 12 additions & 11 deletions

File tree

src/main/java/com/digitalsanctuary/spring/user/service/PasswordPolicyService.java

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,16 @@
44
import lombok.extern.slf4j.Slf4j;
55

66
import org.apache.commons.text.similarity.LevenshteinDistance;
7-
import org.passay.CharacterData;
8-
import org.passay.CharacterRule;
9-
import org.passay.DictionaryRule;
10-
import org.passay.EnglishCharacterData;
11-
import org.passay.LengthRule;
7+
import org.passay.DefaultPasswordValidator;
128
import org.passay.PasswordData;
139
import org.passay.PasswordValidator;
14-
import org.passay.Rule;
15-
import org.passay.RuleResult;
10+
import org.passay.ValidationResult;
11+
import org.passay.data.CharacterData;
12+
import org.passay.data.EnglishCharacterData;
13+
import org.passay.rule.CharacterRule;
14+
import org.passay.rule.DictionaryRule;
15+
import org.passay.rule.LengthRule;
16+
import org.passay.rule.Rule;
1617
import org.passay.dictionary.ArrayWordList;
1718
import org.passay.dictionary.WordListDictionary;
1819
import org.passay.dictionary.WordLists;
@@ -281,19 +282,19 @@ private Optional<String> checkPasswordSimilarity(String password, String usernam
281282
* @return list of error messages if validation fails, empty if valid
282283
*/
283284
private List<String> validateWithPassay(String password, List<Rule> rules, Locale locale) {
284-
PasswordValidator validator = new PasswordValidator(
285+
PasswordValidator validator = new DefaultPasswordValidator(
285286
(detail) -> messages.getMessage(detail.getErrorCode(), detail.getValues(), locale),
286287
rules);
287288
PasswordData passwordData = new PasswordData(password);
288289

289-
RuleResult result = validator.validate(passwordData);
290+
ValidationResult result = validator.validate(passwordData);
290291

291292
if (result.isValid()) {
292293
log.debug("Password is valid.");
293294
return List.of();
294295
} else {
295-
log.warn("Password validation failed: {}", validator.getMessages(result));
296-
return validator.getMessages(result);
296+
log.warn("Password validation failed: {}", result.getMessages());
297+
return result.getMessages();
297298
}
298299
}
299300
}

0 commit comments

Comments
 (0)