Skip to content

About

No description or website provided.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

16 Commits

Folders and files

Repository files navigation

Password Validator API

API para validações de senha. Para ser considerada uma senha válida, deve atender os seguintes requisitos:

  • 9 ou mais caracteres;
  • Ao menos 1 dígito;
  • Ao menos 1 letra minúscula;
  • Ao menos 1 letra maiúscula;
  • Ao menos 1 caractere especial (!@#$%^&*()-+);
  • Não possuir caracteres repetidos dentro do conjunto;
  • Não possuir espaços em branco.

Observação: é recomendado que os caracteres especiais sejam passados em sua versão codificada para evitar erros (por serem caracteres "reservados" para as URIs), conforme tabela abaixo:

Caractere Encoded
! %21
@ %40
# %23
$ %24
% %25
^ %5E
& %26
* %2A
( %28
) %29
- %2D
+ %2B

Endpoint

/password/validate

  • Método:
    GET

  • URL Params

    Obrigatório:

    password={String}

  • Exemplos de resposta:

    • Code: 200 OK
      Content:
    true
    • Code: 400 Bad Request
      Content:
    {
        "status": 400,
        "details": "Required request parameter 'password' for method parameter type String is not present"
    }

Arquitetura:

Alt text

  • 1 - Controller conversa com a porta de entrada sem conhecer as classes que possuem as regras de negócio;
  • 2 - Service constrói a cadeia de responsabilidade e conversa com a classe abstrata responsável por definir se a senha é válida ou não;
  • 3 - Classe abstrata define métodos a serem implementados pelas classes filhas (cada uma possuirá uma regra de validação especifica dentro da cadeia) e possuí métodos em comum entre elas.

Fluxograma:

Alt text


Para rodar o projeto, clone-o na sua máquina e execute a classe: br.com.passwordvalidator.PasswordValidatorApiApplication, o serviço rodará na porta 8080.

About

No description or website provided.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages