I siti web come Facebook store hanno effettuato l'accesso agli utenti nei cookie (lato client) o sessioni (lato server)? I miei test indicano che fanno il primo.I siti web come Facebook store hanno effettuato l'accesso agli utenti in cookie o sessioni?
risposta
In genere, le informazioni sensibili come l'utente attualmente connesso devono essere memorizzate sul lato server - ricorda che i cookie possono essere letti e modificati liberamente dall'utente.
Quello che probabilmente state vedendo è il cookie di sessione che lega un client specifico a una sessione specifica sul server - è così che il server sa quale sessione utilizzare per voi. In questo caso, l'unica cosa che il cookie contiene è un ID sessione casuale, lungo e casuale, quindi non può essere facilmente indovinato da un utente malintenzionato.
L'atto di rubare un cookie di sessione di un altro utente si chiama session hijacking.
Ulteriori informazioni:
- Cookie VS Session
- Session chapter nel manuale di PHP
Grazie a Pekka ... ma puoi spiegare ulteriormente ... ho pensato che una sessione su un server è un file ... perché dovresti averli entrambi? – jon
I cookie possono essere crittografati e utilizzare i checksum per evitare di essere modificati o letti: P – Esailija
@jon legge come funzionano le sessioni (ad esempio nel capitolo Sessione nel manuale PHP). Il cookie è necessario per Facebook per sapere quale utente ha quale sessione. –
Usano sessioni lato server in combinazione con un cookie.
Il cookie contiene un ID, questo ID viene inviato a FaceBook e il server controlla i dettagli per la sessione con tale ID.
Grazie Richard, ma perché hanno bisogno della sessione? Quando parliamo di sessioni, per esempio: $ _SESSION ['utente'] – jon
Penso che l'idea alla base di $_sessions
sia molto più veloce ed efficiente per il server di elaborare le proprie informazioni, piuttosto che ricevere informazioni di massa dal client.
Guardate in questo modo:
You (il server) e un amico (il cliente) sono spettegolare su l'altra amica Cindy, non si amico vi darà tutti i dettagli delle informazioni su di lei (colore dei capelli, altezza , eccetera...)? No, sarebbe una perdita di tempo. È molto più veloce per te elaborare le informazioni che già conosci su Cindy (sul file $_session
, sul lato server) e ricevere solo informazioni univoche ($_cookies
) dal tuo amico (il client).
Efficiente: "Ehi, hai sentito cosa ha fatto Cindy la scorsa notte?"
NON efficiente: "Ehi, hai sentito cosa Cindy con capelli castani, occhi blu, corporatura media, ecc ... ha fatto la scorsa notte?"
Ovviamente, questo non riassume completamente $_sessions
e $_cookies
, ma forse aiuterà qualcuno a capire la gestione efficiente dei dati a breve termine.
Essi utilizzano probabilmente le sessioni e quindi memorizzano alcune informazioni in cookie, come, user_id è connesso con session_id = .../quindi check-in sessione per quel session_id per vedere se l'utente è ancora loggato. Penso che è uno spreco di risorse. Secondo me memorizzo informazioni critiche in sessioni e grandi informazioni nei cookie
- 1. sincronizzare i cookie e le sessioni in diversi sottodomini (asp.net)
- 2. Elenco degli utenti che hanno effettuato l'accesso in Wordpress?
- 3. In UNIX, come trovare utenti che hanno effettuato l'accesso ieri o prima
- 4. PHP non memorizzare i dati in sessioni per alcuni utenti
- 5. Protezione cookie e sessioni
- 6. Il plug-in di Facebook Like Box non viene visualizzato per gli utenti che hanno effettuato la disconnessione; solo per gli utenti registrati
- 7. Sessioni e cookie
- 8. Consentire agli utenti di aggiungere plug-in commenti disqus/facebook
- 9. Interrogazione Gli utenti che hanno 'come' la mia pagina Facebook
- 10. Come rintracciare utenti e installazioni sul Chrome Web Store?
- 11. Sito Web, API e iPhone App consentono agli utenti di accedere tramite Facebook
- 12. Sessioni e cookie per l'autologin in GWT
- 13. agli utenti di selezionare che hanno downvoted ma mai upvoted
- 14. Dobbiamo ancora preoccuparci degli utenti che disattivano i cookie?
- 15. Reindirizza gli utenti all'app store di iTunes o al Play Store di Google?
- 16. Come si fa a disconnettere tutti gli utenti che hanno effettuato il login in primavera?
- 17. Come consentire agli utenti di creare i propri sottodomini sul mio sito Web MVC?
- 18. WordPress visualizza post privati per gli utenti che hanno effettuato l'accesso - come disattivare questa funzionalità?
- 19. Le sessioni PHP impostano i cookie?
- 20. Contenuto scambiato per più sessioni utenti nel sito Web asp.net
- 21. Come trovare tutti gli utenti loggati e quegli utenti che accedono al sito ma non hanno effettuato l'accesso?
- 22. Perché i principali siti Web utilizzano gzip?
- 23. Rails ActiveRecord Session Store in HTML5 SessionStorage Anziché Cookie
- 24. Come consentire agli utenti di valutare un'app per Android dall'interno dell'app (senza reindirizzamento al Play Store)
- 25. Perché alcuni siti web hanno? Utf8 = ✓ nel loro titolo?
- 26. In che modo digg (o altri siti Web di categorie di carichi elevati) memorizzano le sessioni utente?
- 27. ASP.Net Store Password utente nel cookie di sessione?
- 28. Come funzionano le sessioni PHP quando i cookie sono disabilitati?
- 29. come mantenere i cookie e le sessioni variabili con jsoup?
- 30. Play framework come funzionano le sessioni e i cookie?
Se memorizzassero le informazioni su cui l'utente ha effettuato l'accesso in un cookie, chiunque potrebbe accedere come qualcuno che non è. Quindi * probabilmente * non è così;) –
Le sessioni sono spesso eliminate da un valore casuale memorizzato in un cookie. Il cookie di solito non conterrà alcun dato identificativo di conseguenza, e se lo fa, verrà convalidato lato server con altri mezzi. –
cookie memorizzano un ID univoco.Il server utilizza questo ID univoco per l'autenticazione. –