Nel caso di Facebook, il loro SDK consente a un sito Web di determinare se un utente ha effettuato l'accesso:
FB.getLoginStatus() allows you to determine if a user is logged in to Facebook and has authenticated your app. There are three possible states for a user:
- the user is logged into Facebook and has authenticated your application (connected)
- the user is logged into Facebook but has not authenticated your application (not_authorized)
- the user is not logged into Facebook at this time and so we don't know if they've authenticated your application or not (unknown)
Ci saranno metodi simili per altri social network.
How can I hide my logged in sessions from other websites?
Una buona precauzione che puoi adottare è disabilitare i cookie di terze parti nel tuo browser. Questo fermerebbe la pagina HTML di un sito Web con riferimento a una risorsa su Facebook o Twitter che induce il tuo browser a inviare il tuo cookie di autenticazione con la richiesta, quindi la loro API non può determinare se sei loggato o meno.
Tuttavia, alcuni siti Web tentano di aggirare questo problema aprendo una finestra popup che fa in modo che la richiesta includa un cookie di prima parte (dato che è una richiesta diretta al dominio dei social network) e il risultato è comunicato tramite window.opener
al dominio del sito Web in cui ti trovi. potresti essere in grado di bloccarli configurando il blocco dei popup del tuo browser. Tuttavia, a meno che non imposti il blocco popup alle sue impostazioni più severe, i siti web potrebbero essere in grado di aprire il popup quando fai clic su altri elementi della pagina, esponendo la tua privacy.
Se vuoi impedire completamente ai siti di accedere agli stati delle sessioni registrate, devi utilizzare la modalità privata / in incognito (funziona al momento della scrittura) o un altro browser con cookie puliti e vuoti oggetti locali HTML5 e dovresti anche cancellare qualsiasi elemento di archiviazione locale Flash e Silverlight che può essere condiviso tra i browser. Tuttavia, attualmente non è noto che Facebook stia memorizzando i dati utilizzando i plugin del browser.