Hola,
Tengo una zona restringida a la cual se accede con usuario y clave, pero quisiera saber como hacer que dicho usuario NO se pueda conectar nuevamente desde otra pc o en simultaneo.
Gracias anticipadas por su ayuda!
Miguel
| |||
Impedir Doble Usuario Hola, Tengo una zona restringida a la cual se accede con usuario y clave, pero quisiera saber como hacer que dicho usuario NO se pueda conectar nuevamente desde otra pc o en simultaneo. Gracias anticipadas por su ayuda! Miguel |
| ||||
Re: Impedir Doble Usuario Cita: Está bien...pero:
Iniciado por JuanRAPerez ![]() recomiendo usar el sessionid es un numero unico que te asigna el server por Instancia de Navegaror (no asi por pestaña, las pestañas siguen con el mismo SessionID, pero almenos evitas se meta en dos maquinas). + obtienes el sessionid + insertalo en la tabla usuario + cuando el usuario entre a una pagina + validas su id (correo o como sea) + validas que sea el mismo sessionid ++ si es diferente le dices, has iniciaso sesion en otra maquina y lo botas de el sitio ++ si es el mismo que siga navegando suerte ¿En qué momento lo borras? ¿O nunca lo borras y solamente actualizas? de esta manera solamente le darás acceso desde la nueva sesión, y al que botas es al anterior Todas son preguntas, la verdad nunca lo he tenido que hacer (por fortuna) pero no se me hace que sea tan sencillo de controlar. ¿Alguien lo ha hecho? Saludos
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |
| ||||
Re: Impedir Doble Usuario Mmm creo que seria asi: El usuario se logea, se guarda su Session.id en la base de datos. Las paginas seguras tienen un include donde se comprueba que el Session.id sea el mismo que el que esta en la base de datos, sino lo bannea, y limpia el Session.Id de la base de datos. Si el Session.id cambia en la base de datos mientras un usuario esta navegando entre paginas seguras, es porque otro usuario ha entrado con el mismo login; y como se ha limpiado el Session.id en la base de datos, le pasara lo mismo que al primero, por lo tanto tambien sera banneado. Jajaja, que imaginacion!! La cuestion es... funcionara?? ![]() |
| ||||
Re: Impedir Doble Usuario De hecho si, es bastante complicado... porque tu puedes saber cuando un usuario entra a tu pagina y se logea, pero no cuando sale de ella... Cita: ![]() Disculpa si este comentario te parece ofensivo, es solo mi manera de ver las cosas. Saludos |
| ||||
Re: Impedir Doble Usuario Cita: A menos que esté dispuesto a compartir una buena parte de las utilidades ![]() Saludos
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |
| ||||
Re: Impedir Doble Usuario jejejej haganme el tabajo (peguenme el codigo y zas les digo si funciona)... sin comentarios volviendo al tema u_goldman es un problema bien hecho. el chiste es + actualizo el sessionid en la tabla + en cada pagina verifico si el usuario y el sessionid es el mismo + si inicia sesion en otra pc, es logico que ya no usara la sesion que dejo en la pc1 por ende si trata de entrar a una opcion valido y como no es el mismo session id lo fuerzo a logiarse de nuevo eso lo que logra es solo mantener un sessionid activo por usuario que cada vez que digita su usuario y pass se actualiza. Asi evitas que el usuario entre dos veces. En una misma pc, puede tener dos o tres pestañas (separadores) por navegador los cuales reciben el mismo sessionid, eso quiere decir que el usuario puede estar haciendo muchas cosas en una copia (instancia) de su navegador con multiples pestañas. jajaja un relajo no? efectivo solo para forzar una sola copia de navegador por usuario. asi definamolo.
__________________ JuanRa Pérez San Salvador, El Salvador |
| ||||
Re: Impedir Doble Usuario Cita: y si por casualidad, el usuario cierra el explorador, y vuelve a entrar??? lo dejara logearse???![]() ![]()
__________________ "Eres parte del problema, parte de la solucion o parte del paisaje" Un Saludo desde Desierto de Altar, Sonora, MX. Shiryu_libra |
| ||||
Re: Impedir Doble Usuario al entrar al sitio como el navegador tiene otra session obtenida de el server al validar la session con el id de el usuario reconoce que es otra sesión entonces se le pide de nuevo el usuario y el pass (dado que la session no corresponde) al ingresar de nuevo al sistema el sessionid se actualiza y le permite navegar EDITO: no lo deja loguearse automaticamente, le pide las credenciales, actualiza en la base de datos el sessionid actual, y lo deja navegar sin problemas.
__________________ JuanRa Pérez San Salvador, El Salvador |
| ||||
Re: Impedir Doble Usuario Sería algo así como en el mésenyer... que cuando te olvidás una session abierta en un equipo y vas a otro e iniciás sesión, te permite ingresar pero a la sesión original la mata. ¿sería así el planteo?
__________________ ...___... |
| ||||
Re: Impedir Doble Usuario sip ese seria el planteamiento permitir la ultima sessionid guardada como la activa asi cada vez que el usuario inicia sesion se le actualiza el campo y se valida el sessionid de el navegador contra el sessionid almacenado ya pego mas o menos lo que expongo en el otro post
__________________ JuanRa Pérez San Salvador, El Salvador |
| ||||
Re: Impedir Doble Usuario Funcion validar usuario: + Funcion ValidarUsuario + if Session("aut") = False then ++ redirecciono + obtengo el sessionid actual que el servidor asigno a la copia del navegador + SELECT ... WHERE id_usuario = "&id_usuario&" and sessionID = '"&sessionID&"' ++ si se cumple, es la session correcta, si no redirecciono si inicio en la pc1 y le dio el sessionid = 1212 lo actualice en la base el usuario deja la pc, se va a otra (y de la el sitio abierto con sus credenciales y todo) inicia sesion en la pc2, y le dio el sessionid = 2525 otro usuario (usuario2) esta en la pc1, ve que dejaron una pagina cargada, y dice "eliminar todos los registros" y el usuario2 dice, borrare los datos de este amigo que dejo este sitio abierto, da clic en el enlace y la funcion valida que no es el sessionid correcto, dado que 1 el session id de esa pc es el 1212, o 2 ya caduco por el tiempo de caducidad de las sesiones entonces le haces un response redirect a errortalcosa.asp?txterror=2 en esa pagina el error 2 para iprmir es: has iniciado sesion en otra ventana de navegador, o otra pc, verifica!, si este no es el caso reinicia tu contraseña que probablemente quedo almacenada en algun navegador! pasos para cambiar de contraseña.... y todo el texto que se les ocurra.... digo, eso es lo que hago, no se si sea correcto, per me funciona 1 usuario con un unico sessionid valid. suerte
__________________ JuanRa Pérez San Salvador, El Salvador |
| ||||
Re: Impedir Doble Usuario Si...entonces "los pateas" con cada nueva sesión, gracias por la explicación. Saludos
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |
| ||||
Re: Impedir Doble Usuario Correcto, es lo único que se me vino a la mente y me ha funcionado. veremos si el amigo de el mensaje inicial se anima a leer este post y armar una idea fucional suerte
__________________ JuanRa Pérez San Salvador, El Salvador |
| |||
Re: Impedir Doble Usuario Pregunto: Y si se hace con el Ip de la maquina con que se logue el Usuario? Ejm: a la tabla de Usuarios le agrego un campo Iplogin donde el usuario al loguearce, actualiza ese campo con el ip actual de su maquina y se graba. Entonces en mi pagina tengo un boton de Cerrar Sesion que me cierra la sesion cuando quiero salirme del sitio, a ese boton le pongo un javascript que al cerrar sesion me envie a la Db exactamente al campo Iplogin un valor NULL o vacio? para q cuando salga del sitio se borre la Ip grabada previamente? Mi pregunta es si el sitio se cierra Automaticamente porque cauduco el Session si ay algun codigo para hacer que al caducar la session haga un update a una tabla y borre automaticamente algo? EEEE no se si esto se pueda? quizas sono como loco jajaj pero no se que piensan? |
| ||||
Re: Impedir Doble Usuario jaja sin comentario sigo con mi método, no permito usuarios mas que con la sessionid evito que entre en dos pc y zas que este haciendo cosas desde dos lados y si la sesion caduca, es porque anda de ocioso en 10 minutos, es mas que suficiente para soltar una sesión no creen? suerte
__________________ JuanRa Pérez San Salvador, El Salvador |
| |||
Respuesta: Impedir Doble Usuario Cordial saludo, lo que no entiendo muy bien es como el servidor compara la sessionid que tiene almacenada con la del cliente para autenticar la información en caso de que este no posea cookies gracias |