[Resolvido!] Como limitar tentativas de acesso inválido no login em um sistema Java Web?

Olá pessoal, bom dia.

Alguém tem alguma experiência prática em como limitar tentativas de acesso inválido no login de um sistema java web?
Agradeço a colaboração.

Olá,

Tem um exemplo utilizando Struts 2 ou VRaptor, na apostila fj21 da caelum, se não me falha a memória.

[]'s

[b]Brother, já tem você tem q criar um loop para checar no banco se existe o devido usuário, você pode criar uma simples variável e na hora do loop você pode incrementa-lá. Ai quando chegar a um simples contagem, por exmplo 3 tentativas, ai você vai setar outra mensagem dizendo que o mesmo não pode mais efetuar login pelo número de tentativas e depois encerrar a operação.

Isso é coisa simples, mas funciona.

Existe várias formas de fazer esse requisito.

Bom desenvolvimento…

Abraço.[/b]

[quote=getAdicted]Olá,

Tem um exemplo utilizando Struts 2 ou VRaptor, na apostila fj21 da caelum, se não me falha a memória.

[]'s[/quote]

Olá bom dia.

Tem sim, mas é o básico do básico.

Mesmo assim, obrigado por responder. Encontrei alguma coisa que está me dando um rumo muito bom no link abaixo:

http://www.guj.com.br/java/231063-limitar-tentativas-de-acesso-no-login/1

Vamos ver se eu consigo concluir aqui.

Valeu.

[quote=alberthy][b]Brother, já tem você tem q criar um loop para checar no banco se existe o devido usuário, você pode criar uma simples variável e na hora do loop você pode incrementa-lá. Ai quando chegar a um simples contagem, por exmplo 3 tentativas, ai você vai setar outra mensagem dizendo que o mesmo não pode mais efetuar login pelo número de tentativas e depois encerrar a operação.

Isso é coisa simples, mas funciona.

Existe várias formas de fazer esse requisito.

Bom desenvolvimento…

Abraço.[/b]

[/quote]

Brother, bom dia.
Realmente, a idéia é simples. A questão toda é desenvolver as lógicas para, por exemplo, setar o usuário como inativo (boolean false), enviar um email para o proprietario do login, informando as tentativas e o cadastro de uma nova senha, e por ae vai.

Mas obrigado por contribuir.
Abs.

[quote=getAdicted]Olá,

Tem um exemplo utilizando Struts 2 ou VRaptor, na apostila fj21 da caelum, se não me falha a memória.

[]'s[/quote]
nâo sei se estou errado ou certo, mas eu sou do tipo que primeiro tento criar ou achar uma forma de fazer as coisas sozinho, e se não der certo ai procuro ajuda, .
isso é questão de logica para fazer isso, é só parar e pensar, e depois tentar codificar,
porque senão é passar a vida a procurar formulas feitas para tudo que for necessario

Você pode usar um Filter, cada vez que o cara tentar acessar você incrementa um campo integer no banco. Você pode usar Session ou Cookies tbm.

[quote=sulito][quote=getAdicted]Olá,

Tem um exemplo utilizando Struts 2 ou VRaptor, na apostila fj21 da caelum, se não me falha a memória.

[]'s[/quote]
nâo sei se estou errado ou certo, mas eu sou do tipo que primeiro tento criar ou achar uma forma de fazer as coisas sozinho, e se não der certo ai procuro ajuda, .
isso é questão de logica para fazer isso, é só parar e pensar, e depois tentar codificar,
porque senão é passar a vida a procurar formulas feitas para tudo que for necessario[/quote]

É isso mesmo!

Até porque, o exemplo que ele citou do livro da caelum é um norteador muito básico. Se você olhar, não tem praticamente nada, a não ser como você desenvolver os métodos básicos para inicialização do processo.

O que se tem que ter firme é a idéia da lógica de como vai funcionar.

Abs.

[quote=Kleber-rr][quote=sulito][quote=getAdicted]Olá,

Tem um exemplo utilizando Struts 2 ou VRaptor, na apostila fj21 da caelum, se não me falha a memória.

[]'s[/quote]
nâo sei se estou errado ou certo, mas eu sou do tipo que primeiro tento criar ou achar uma forma de fazer as coisas sozinho, e se não der certo ai procuro ajuda, .
isso é questão de logica para fazer isso, é só parar e pensar, e depois tentar codificar,
porque senão é passar a vida a procurar formulas feitas para tudo que for necessario[/quote]

É isso mesmo!

Até porque, o exemplo que ele citou do livro da caelum é um norteador muito básico. Se você olhar, não tem praticamente nada, a não ser como você desenvolver os métodos básicos para inicialização do processo.

O que se tem que ter firme é a idéia da lógica de como vai funcionar.

Abs.[/quote]

Eu citei a apostila por que eu já a utilizei como objeto de estudo, comentei sobre a mesma mais como uma forma de gratidão, e se vocês são tão bons, não deveriam ter aberto uma conta no GUJ, deveriam ter feito um fórum para vocês. :smiley:

Amém irmãos!

[]'s

[quote=getAdicted][quote=Kleber-rr][quote=sulito][quote=getAdicted]Olá,

Tem um exemplo utilizando Struts 2 ou VRaptor, na apostila fj21 da caelum, se não me falha a memória.

[]'s[/quote]
nâo sei se estou errado ou certo, mas eu sou do tipo que primeiro tento criar ou achar uma forma de fazer as coisas sozinho, e se não der certo ai procuro ajuda, .
isso é questão de logica para fazer isso, é só parar e pensar, e depois tentar codificar,
porque senão é passar a vida a procurar formulas feitas para tudo que for necessario[/quote]

É isso mesmo!

Até porque, o exemplo que ele citou do livro da caelum é um norteador muito básico. Se você olhar, não tem praticamente nada, a não ser como você desenvolver os métodos básicos para inicialização do processo.

O que se tem que ter firme é a idéia da lógica de como vai funcionar.

Abs.[/quote]

Eu citei a apostila por que eu já a utilizei como objeto de estudo, comentei sobre a mesma mais como uma forma de gratidão, e se vocês são tão bons, não deveriam ter aberto uma conta no GUJ, deveriam ter feito um fórum para vocês. :smiley:

Amém irmãos!

[]'s[/quote]

Boa noite, getAdicted, td bem?

Todos nós começamos o estudo através de alguma fonte de pesquisa. Ninguem começa a desenvolver do nada. Não foi minha intenção te ofender ou menosprezar o seu comentario sobre o exemplo que você postou: como eu disse, ele é um norteador muito básico, mas um norteador.

Se eu soubesse de tudo, estaria no fórum do mesmo jeito para compartilhar informações e resolução de problemas, como eu tenho feito nesses quase 2 anos de participação do GUJ, afinal, é para isso que estamos aqui: para aprender e compartilhar conhecimento.

Mas como eu sou iniciante em Java e não sei de quase nada, vou sempre que possível recorrer aos colegas do fórum para discutir sobre os métodos e sobre as melhores formas de desenvolvê-los.

Mais uma vez, mil desculpas se meu comentário te constrangeu. Não foi minha intenção.

Amém irmão.

Jesus é o Senhor!

É nóis Clebão,

Desculpe minha imprudência, não tiro a razão de vocês.

Citei a apostila por que foi de grande valia para esse que vos escreve. Essas discussões mais enérgicas acontecem mesmo, afinal, o que seria dos Stones se todos gostassem dos Beatles, hehe

Paz e saúde, de coração.

Abraço!

Resolvido pessoal. Usei o for dentro dos if’s para pegar o id do usuario existente e bloqueá-lo depois de algumas tentativas.

Agora, vou conversar com os responsáveis pelo pedido de bloqueio de senha com 5 tentativas, para mudar-mos a regra de negócio para facilitar a vida do usuário, fazendo com que ele receba a senha em seu email.

Valeu pessoal.

Abs.