【问题标题】:Java Web Application Create User, Mitigate weak passwordsJava Web 应用程序创建用户,缓解弱密码
【发布时间】:2016-07-19 17:26:38
【问题描述】:

我正在创建一个 java Web 应用程序,以使用户能够创建公平的强凭据,我想防止他们输入弱密码。我想遵循它的基本规则,它必须包含至少八个字符和至少一个数字和一个符号。我将不胜感激,非常感谢!

【问题讨论】:

标签: java jsp web-applications user-accounts


【解决方案1】:

两种解决方案:

1.) 您可以对密码要求使用正则表达式,并将用户输入的密码与该表达式进行比较,如果密码模式与正则表达式匹配,则可以让用户注册,否则会显示错误。

2.) 当用户输入密码时,您可以调用一个函数来检查是否: 一种。密码至少包含一个数字。 湾。密码至少包含一个特殊字符。 C。用户输入的密码长度是否大于最小长度等...

此函数将根据是否接受密码返回真或假。

希望对你有所帮助。

【讨论】:

    【解决方案2】:

    你可以通过这个java代码检查用户输入的密码,

    public static boolean isValidPassword(String userEnteredPassword) {
    
        boolean atleastOneUpper = false;
        boolean atleastOneLower = false;
        boolean atleastOneDigit = false;
    
        if (userEnteredPassword.length() < 8) { // If its less then 8 characters, its automatically not valid
            return false;
        }
    
        for (int i = 0; i < userEnteredPassword.length(); i++) { // Lets iterate over only once. Saving time
            if (Character.isUpperCase(userEnteredPassword.charAt(i))) {
                atleastOneUpper = true;
            }
            else if (Character.isLowerCase(userEnteredPassword.charAt(i))) {
                atleastOneLower = true;
            }
            else if (Character.isDigit(userEnteredPassword.charAt(i))) {
                atleastOneDigit = true;
            }
        }
    
        return (atleastOneUpper && atleastOneLower && atleastOneDigit); // Return true IFF the userEnteredPassword is atleast eight characters long, has atleast one upper, lower and digit
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多