Article image
Valdemar Taborda
Valdemar Taborda28/08/2023 19:38
Compartilhe

DESAFIO - Validando a Força de Senhas no IAM 1 / 1

  • #AWS
  • #Java

Boa Noite Rede!

Segue como realizei o DESAFIO - Validando a Força de Senhas no IAM 1 / 1 

Desenvolvimento Java com Cloud AWS.

Utilizado varias Verificações para poder liberar o acesso, bem complexo para poder gerar mais segurança ao serviço.

image

import java.util.regex.Pattern;

import java.util.Scanner;

public class VerificandoSenhas {

    public static void main(String[] args) {

      Scanner scanner = new Scanner(System.in);

      //System.out.println("Digite a senha para verificar a força:");

      String senha = scanner.nextLine();

      scanner.close();

      String resultado = verificarForcaSenha(senha);

      System.out.println(resultado);

    }

    public static String verificarForcaSenha(String senha) {

      int comprimentoMinimo = 8;

      // Critérios de validação usando expressões regulares

      boolean temLetraMaiuscula = Pattern.compile("[A-Z]").matcher(senha).find();

      boolean temLetraMinuscula = Pattern.compile("[a-z]").matcher(senha).find();

      boolean temNumero = Pattern.compile("\\d").matcher(senha).find();

      boolean temCaractereEspecial = Pattern.compile("\\W").matcher(senha).find();

      boolean temSequenciaComum = senha.matches(".*(?i)123456.*|.*(?i)abcdef.*");

      boolean temPalavraComum = senha.equalsIgnoreCase("password") || senha.equalsIgnoreCase("123456") || senha.equalsIgnoreCase("qwerty");

      // TODO: Verifique o comprimento mínimo e critérios de validação

    if (senha.length() < comprimentoMinimo) {

      return "Sua senha e muito curta. Recomenda-se no minimo " + comprimentoMinimo + " caracteres.";

    } else if (!temLetraMaiuscula || !temLetraMinuscula || !temNumero || !temCaractereEspecial) {

      return "Sua senha nao atende aos requisitos de seguranca.";

    } else if (temSequenciaComum || temPalavraComum) {

      return "Sua senha nao atende aos requisitos de seguranca. Evite sequencias ou palavras comuns.";

    } else {

      return "Sua senha atende aos requisitos de seguranca. Parabens!";

    }

    }

  }

Compartilhe
Comentários (2)
Kamiah Pedra
Kamiah Pedra - 12/09/2023 15:34

Valeu por postar o seu código, estava quebrando a cabeça com ele e criando um infinidade de comando if que nem precisava

Daniela Velter
Daniela Velter - 29/08/2023 09:50

Olá obrigada pela dica