Un utente può avere la possibilità di accedere da più sedi contemporaneamente?

9

In passato, ho sempre utilizzato una singola sessione per impostazione utente, ma sto lavorando a un progetto ora in cui è possibile accedere a un utente da più postazioni / browser contemporaneamente.

Quali sono i problemi di sicurezza per le singole o più sessioni simultanee per account? Un metodo è considerato best practice rispetto all'altro? Quali altre considerazioni dovrebbero essere fatte e come dovrebbe essere implementata la soluzione ideale?

    
posta VirtuosiMedia 23.03.2012 - 17:43
fonte

5 risposte

4

Personalmente non vedo alcun problema di sicurezza nel fatto che l'utente possa accedere da più sedi contemporaneamente.

Tuttavia, quando ciò accade, potrebbe indicare che l'account è stato compromesso e utilizzato da un altro utente nello stesso momento. Penso che la soluzione migliore sarebbe quella di informare l'utente della situazione ("Ehi, hai già effettuato l'accesso in un'altra posizione"), e dargli la possibilità di eliminare l'avviso o di agire (di solito cambia la sua password) .

Ovviamente, sarebbe necessario utilizzare un'autenticazione più strong prima di intraprendere qualsiasi azione sull'account.

    
risposta data 23.03.2012 - 18:00
fonte
4

Per aggiungere alle altre risposte, c'è un'altra preoccupazione in merito alla possibilità di accedere a più accessi da un singolo account, ovvero consentire agli utenti di condividere accessi al sistema, il che a sua volta potrebbe influire su tutte le tracce di controllo archiviate dall'applicazione .

La mia sensazione in termini di implementazione sarebbe che il modo migliore per gestirlo sarebbe che quando un utente che ha già effettuato l'accesso cerca di autenticare, si avvisa che sono già registrati e chiede loro se vogliono per uscire dall'altro sistema e accedere nella posizione corrente. Se lo fanno, termina la sessione esistente.

    
risposta data 23.03.2012 - 21:49
fonte
3

Se l'account è stato compromesso, l'autore dell'attacco è statisticamente improbabile che lo utilizzi contemporaneamente all'utente legittimo. Rilevare account utilizzati da più postazioni e reagire a pattern sospetti può essere utile (tenendo presente che è necessario gestire l'esperienza utente sui falsi positivi), ma in particolare il rilevamento di accessi simultanei non aiuta.

Più accessi da una posizione potrebbero essere gli utenti che desiderano utilizzare un browser diverso (la probabilità che ciò dipenda in gran parte da quanto tecnici sono gli utenti). D'altra parte, potrebbe essere qualcuno che annusa attivamente su una connessione wifi. Ciò è particolarmente rilevante se il design della tua applicazione rende più facile per uno sniffer catturare il cookie dell'utente piuttosto che afferrare i suoi dati di autenticazione, ma probabilmente se stai facendo qualcosa di sbagliato, come non usare HTTPS per tutto ciò che dovresti. Nota inoltre che se l'utente malintenzionato utilizza lo stesso browser dietro lo stesso NAT, potresti non essere in grado di comunicare in modo affidabile l'autore dell'attacco all'utente legittimo.

Passare a una posizione diversa potrebbe essere l'utente che passa da un dispositivo a un altro (uscire da casa e passare alla mia cella). Potrebbe anche essere un dispositivo mobile che cambia provider IP (uscire dalla portata del wifi gratuito del campus e passare alla mia connessione 3G).

Per la maggior parte delle applicazioni, consentire accessi simultanei e trattare le connessioni da posizioni insolite (non necessariamente simultanee) come sospette. Una notifica (non spaventosa ("sei stato violato") o dirompente (un banner, non un popup modale), solo informativo) di posizioni precedenti e concorrenti può avvisare l'utente; assicurati di fornire un modo per l'utente di scoprire cosa dovrebbe fare se pensa che stia succedendo qualcosa. Alcune applicazioni come il banking dovrebbero utilizzare regole più rigide, ma non è la norma.

    
risposta data 23.03.2012 - 21:03
fonte
1

Anche se sono d'accordo con le altre risposte qui nel caso generale, ci sono alcuni regolamenti (ad esempio PCI-DSS) che richiedono per impedire ciò.

Quindi se cadi sotto qualcuno di questi, non hai davvero molta scelta in materia.

    
risposta data 25.03.2012 - 22:30
fonte
1

Un'altra cosa che suggerirei di considerare è la consistenza delle informazioni nell'applicazione, oltre ai punti menzionati di possibile condivisione dell'accesso e compromissione dei conti.

    
risposta data 28.03.2012 - 09:40
fonte

Leggi altre domande sui tag