Bloccare utente loggato

martedì 23 novembre 2010 - 14.34
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  Windows XP  |  Visual Studio 2008  |  SQL Server Express

igorbaldacci Profilo | Newbie

Mi sto scervellando con questo piccolo problema: voglio BLOCCARE un utente che si logga al mio sito!

Ho pensato di mettere un campo boolean sul DB da aggiornare quando l'utente si logga e verificare quindi se questo campo è inizializzato quando un altro utente cerca di loggarsi con la stessa coppia di user/password.

Naturalmente, quando l'utente fa il logoff riaggiorno il campo e lo rimetto su false... ma qui nasce il problema: se l'utente non fa il logoff col tastino ma chiude la finestra del browser?? Lo sblocco non avverrà mai...

Come si risolve in questi casi? Qualcuno sa indicarmi una "retta" via?

Grazie.
Igor

sankyu Profilo | Senior Member

puoi usare una chiamata ajax con l'evento window.close lato javascript

Consulente e Sviluppatore .net in ambito finanziario
Dai un occhio al mio blog potrebbe tornarti utile
http://dotnetmemo.blogspot.com

igorbaldacci Profilo | Newbie

mi daresti qualche info in più.. non ho capito neanche da dove cominciare

GRAZIE per la risposta comunque

sankyu Profilo | Senior Member

Anzi mi è tornato in mente quello che avevo fatto tanti anni fa per ovviare che in due entrassero nel sistema in contemporanea vedo di spiegartelo brevemente anche se non è la best practice ma funziona.
Innanzitutto ad ogni utente metti un campo nel db che si chiama Unlock key ed appena si logga gli fornisci questa chiave che servirà per sbloccare l'account inoltre setti un flag che identifica il fatto che si sia loggato a true. Da questo momento a chiunque si vuole loggare con la stessa user e password deve inserire la key che hai fornito prima in caso contrario il login non va. Inoltre ad ogni login con successo cambia la chiave in modo che questa sia univoca tutte le volte così solo chi si è loggato per primo sa la chiave.
E' un modo un po macchinoso ma meglio di altri più complessi come l'autenticazione mista con certificati; comunque se cerchi sul forum questo problema era già stato affrontato e risolto in vari modi + o meno complessi

Consulente e Sviluppatore .net in ambito finanziario
Dai un occhio al mio blog potrebbe tornarti utile
http://dotnetmemo.blogspot.com

igorbaldacci Profilo | Newbie

questa idea della chiave di sblocco non è male.. ci ragiono sopra! E' vero che è macchinosa ma i metodi alternativi che sto provando fino ad ora non sono poi così performanti...

grazie per ora, ti faccio sapere

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5