[Java] Génération de mot de passe (Pasay)

Utilisez Pasay, qui est une bibliothèque d'application de règles de mot de passe. Les mots de passe peuvent être générés à l'aide d'ensembles de règles configurables.

Paramètres d'utilisation de Pasay dans les projets Maven

pom.xml


<dependency>
    <groupId>org.passay</groupId>
    <artifactId>passay</artifactId>
    <version>1.6.0</version>
</dependency>

Code pour générer un mot de passe à casse mixte à 8 chiffres

Password.java


public class Password {

    public static String generate() {
        List<CharacterRule> rules = Arrays.asList(
                  new CharacterRule(EnglishCharacterData.UpperCase, 1),
                  new CharacterRule(EnglishCharacterData.LowerCase, 1),
                  new CharacterRule(EnglishCharacterData.Digit, 1)
            );
        PasswordGenerator generator = new PasswordGenerator();
        String password = generator.generatePassword(8, rules);
        return password;
    }
}

Code de test

PasswordTest.java



public class PasswordTest {

    @Test
    public void testGenerate() {
        String password = Password.generate();
        assertTrue(password.length() == 8);
        assertTrue(password.matches(".*[a-z].*"));
        assertTrue(password.matches(".*[0-9].*"));
        assertTrue(password.matches(".*[A-Z].*"));
    }
}

Recommended Posts

[Java] Génération de mot de passe (Pasay)
Génération de séquence Java
[Java] Génération de flux API-Stream
[Java] Nouvelle méthode de génération de threads (2)
[Java] Méthode de génération aléatoire (aléatoire)
[Java Silver] Comment générer un tableau
[Java] Nouvelle méthode de génération de threads (1)
Génération récente de spécification d'API Java
Java
Java
Introduction du guide de programmation Java de nouvelle génération (Java 10)
Introduction du guide de programmation Java de nouvelle génération (Java 11)
Introduction du guide de programmation Java de nouvelle génération (Java 12)