Pergunta

1) Uma tela de login típica de um aplicativo, ID bloqueado para senhas erradas quando mais de três tentativas.

2) A tentativa não pode ser armazenada na sessão, porque o usuário pode usar vários navegadores na mesma máquina ou diferente.

3) Não quero persistir a contagem no banco de dados, pois seria necessário redefini -lo após 24rs.

Qual é a melhor maneira de fazer isso?

Foi útil?

Solução

Você pode persistir a data do último login correto, data do último login errado e contar com logins errados em uma linha.

O "bloqueio" aconteceria automaticamente se a contagem excedesse 3 e o último login errado foi nos últimos x minutos. Dessa forma, você não precisa redefinir nada apenas para comparar datas;)

Outras dicas

Você provavelmente gostaria de usar o endereço IP para rastrear tentativas de login incorretas.

Se você deseja ver se alguém está tentando forçar uma senha, use IP.

Se você estiver tentando bloquear os usuários que esqueceram sua senha, faça -o por nome de usuário.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top