Tema: Login
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/03/2014, 15:44
javidotnet
 
Fecha de Ingreso: mayo-2013
Ubicación: Chaco, Argentina
Mensajes: 45
Antigüedad: 11 años
Puntos: 3
Exclamación Respuesta: Login

Hola castevo, que tema interesante planteaste!

Mira, estuve pensando y se me ocurrió esta idea, pero habría que ver cómo se la implementa:

[ Aplicación nº 1 ] <-> [ Aplicación nº 2] <-> BD

Aplicación nº 1 (A1): La que usa el usuario (X) para loguearse
Aplicación nº 2 (A2): La que hace de intermediaria entre la aplicación nº1 y la BD

La idea es la siguiente:

X inicia A1 para loguearse
A1 solicita a X el nombre de usuario y contraseña
X ingresa esos datos
A1 le dice a X: "Solicitando permiso para ingresar al sistema..."
A1 solicita a A2 información sobre el logueo de X
A2 recibe de A1 la info de X y busca en BD dicha información:

Tabla_Auditoria_Usuarios_Login (TAUL)
ID ID_Usuario Fecha Hora Cód_Sesión Estado_Sesión

Aquí tenemos 2 resultados posibles:
1) A2 no encuentra a X en TAU, entonces le avisa a A1 que X puede ingresar
A1 le dá permiso a X (Asunto resuelto)
Mientras tanto A2 actualiza TAU con los datos del nuevo inicio de sesión de X

2) A2 encuentra a X en TAU, entonces:
A2 verifica si X se encuentra conectado desde otra PC, según el Cód_Sesión, aquí nuevamente tenemos 2 resultados
posibles:
2.1) A2 comprueba que X ya no se halla activo en la otra PC, entonces A2 le avisa a A1 que X puede ingresar
A1 le dá permiso a X (Asunto resuelto)
Mientras tanto A2 actualiza TAU con los datos del nuevo inicio de sesión de X

2.2) A2 comprueba que X se halla activo en la otra PC

Aquí A2 debe verificar en cuál de las dos PCs se encuentra el verdadero X, entonces tenemos dos situaciones:
2.2.1) A2 comprueba que en PC1 está un impostor de X, y que el verdadero X está queriendo ingresar desde PC2
A2 cierra la conexión de PC1 que está siendo usanda por el impostor de X
A2 Abre la conexión para PC2, donde se encuentra el verdadero X, queriendo ingresar
A1 le dá acceso a X (Asunto resuelto)
Mientras tanto A2 actualiza TAU con los datos del nuevo inicio de sesión de X

2.2.2) A2 comprueba que en PC2 está un impostor de X queriendo ingresar al sistema, siendo que el verdadero X se encuentra conectado desde la PC1
A2 le avisa a A1 que X es un impostor
A1 le impide a X el acceso al sistema (Asunto resuelto)

Espero que este algoritmo sea correcto y que se pueda implementar la A2 que sería la solución para este problema desde el punto de vista desde el cual lo encaré yo.

Todavía hay varias cosas que agregar, como por ejemplo las medidas a tomar en caso que se encuentre un impostor, o los campos que debe manejar la TAUL,...

Pero para comenzar pienso que es un buen punto de partida, teniendo en cuenta que en tu caso ya tenés la A1 y la BD, sólo falta la A2 y cómo hacer que dialoguen A1 y A2.

Saludos cordiales!