autenticacion en una aplicacion JEE

Amigos:
tengo un problema relacionado con la autenticacion en una JEE aplicacion cliente en glassfish. El caso es que yo quiero bloquear a cualquier usuario despues de una determinada cantidad de intentos fallidos de autenticacion. Para esto no puedo utilizar el modulo de autenticacion que trae glassfish 3.0 por defecto. Por lo que tendre que crear mi propio modulo de autenticacion. Yo estuve leyendo sobre SAM (Server Authentication Module) pero me parece que no me sirve pues la aplicacion que voy a desasrrollar es de escritorio y creo que SAM solo es para aplicaciones web.
Agradeceria mucho cualquier ayuda que me puedan dar...
Saludos

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Shadonwk

que tal utilizar spring

que tal utilizar spring security?

Imagen de benek

que tal utilizar spring

que tal utilizar spring security?

¿Y cómo haces para restringir un usuario después de varios intentos? Spring Security no tiene mecanismos "out of the box" para hacer eso.

Imagen de benek

Custom Filter

Lo que puedes hacer si usas Spring Security es crear tu propio AuthenticationProcessingFilter extendiéndolo. Ya en tu filtro extendido sobreescribes el método onUnsuccessfulAuthentication() para agregar funcionalidad para max attemps.

Saludos.

@_benek

gracias

el caso es que no puedo utilizar Spring, porque en el royecto en que estoy trabajando se definio que se iba a emplear el modelo de seguridad que provee JEE y el contenedor Glassfish particularmente.
de todas formas muchas gracias por ayudarme

Imagen de ezamudio

extensible?

Y a poco el modelo de glassfish no es extensible? Debe de haber algo por ahí que te permita extenderlo así como el de Spring Security...

Un Servlet Filter

Tal vez puedas usar un Filtro normal y guardas los intentos de acceso para derminada sesion o en tu pantalla de login (supongo que tendras una) revisar el numero de intentos para una determinada session y a los tres ejecutas el servicio de deshabilitar el usuario.