[Java] Passwortgenerierung (Pasay)

Verwenden Sie Pasay, eine Bibliothek zur Durchsetzung von Kennwortrichtlinien. Passwörter können mithilfe konfigurierbarer Regelsätze generiert werden.

Einstellungen für die Verwendung von Pasay in Maven-Projekten

pom.xml


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

Code zum Generieren eines 8-stelligen Mischpassworts

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;
    }
}

Testcode

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] Passwortgenerierung (Pasay)
Java-Sequenzgenerierung
[Java] Stream API-Stream-Generierung
[Java] Neue Thread-Generierungsmethode (2)
[Java] Zufällige Generierungsmethode (Zufällig)
[Java Silver] So generieren Sie ein Array
[Java] Neue Thread-Generierungsmethode (1)
Neueste Generierung von Java-API-Spezifikationen
Java
Java
Einführung des Java-Programmierhandbuchs der neuen Generation (Java 10)
Einführung des Java-Programmierhandbuchs der neuen Generation (Java 11)
Einführung des Java-Programmierhandbuchs der neuen Generation (Java 12)