Was ist der Unterschied zwischen lokalem Speicher und Sitzungspeicher?
Lokale Speicher- und Sitzungsspeicher sind beide Webspeicherobjekte, die von Webbrowsern bereitgestellt werden, um Daten auf der Client-Seite zu speichern. Der Hauptunterschied zwischen den beiden liegt in ihrem Umfang und ihrer Beharrlichkeit.
- Umfang : Lokaler Speicher hat keine Ablaufzeit und ist verfügbar, bis er ausdrücklich gelöscht wird. Es ist auf verschiedene Registerkarten und Fenster desselben Ursprungs (gleiche Domäne, Protokoll und Port) zugänglich. Auf der anderen Seite ist der Sitzungsspeicher auf die Lebensdauer der Registerkarte oder das Fenster beschränkt, das sie erstellt hat. Wenn die Registerkarte oder das Fenster geschlossen ist, wird der Sitzungsspeicher gelöscht und kann nicht von anderen Registerkarten oder Fenstern zugegriffen werden, selbst wenn sie aus demselben Ursprung stammen.
- Persistenz : Die lokale Speicherung bleibt auch nach dem Schließen des Browsers bestehen und wiedereröffnet, während die Sitzungspeicher für die vorübergehende Speicherung gedacht ist und beim Ende der Sitzung gelöscht wird (dh wenn die Registerkarte oder das Fenster geschlossen ist).
- Nutzung : Aufgrund ihrer Persistenz- und Umfangsunterschiede wird der lokale Speicher in der Regel für Daten verwendet, die über Sitzungen hinweg beibehalten werden müssen, wie z. B. Benutzerpräferenzen oder zwischengespeicherte Daten. Die Sitzungspeicher hingegen eignet sich eher für Sitzungsspezifische Daten, die nicht über die aktuelle Browsersitzung hinausgehen müssen, z.
Wie lange bleiben Daten im lokalen Speicher im Vergleich zur Sitzungspeicherung bestehen?
- Lokaler Speicher : Daten, die im lokalen Speicher gespeichert sind, bleiben auf unbestimmte Zeit bestehen, bis sie entweder vom Benutzer manuell gelöscht oder programmgesteuert von der Anwendung entfernt werden. Dies bedeutet, dass die Daten auch nach der Schließung des Browsers verfügbar und wiedereröffnet sind und über mehrere Registerkarten und Fenster zugänglich sind, solange sie aus demselben Ursprung stammen.
- Sitzungsspeicher : Daten im Sitzungsspeicher hingegen bleiben nur für die Dauer der Sitzung bestehen. Die Sitzung endet, wenn die Registerkarte oder das Fenster, in dem der Sitzungsspeicher erstellt wurde, geschlossen ist. Folglich werden die Daten zu diesem Zeitpunkt automatisch gelöscht und können nicht von anderen Registerkarten oder Fenstern zugegriffen werden, selbst wenn sie aus demselben Ursprung stammen.
Können Daten, die im Sitzungsspeicher gespeichert sind, auf verschiedene Browser -Registerkarten zugegriffen werden?
Nein, Daten, die im Sitzungsspeicher gespeichert sind, können nicht auf verschiedenen Browser -Registerkarten zugegriffen werden. Der Sitzungsspeicher ist auf die Registerkarte oder das Fenster isoliert, in dem er erstellt wurde. Wenn eine neue Registerkarte oder ein neues Fenster geöffnet wird, hat sie auch dann, wenn es aus demselben Ursprung stammt, und es wird einen eigenen separaten Sitzungsspeicher und die Daten werden nicht zwischen ihnen geteilt. Wenn eine Registerkarte oder ein Fenster geschlossen ist, wird der damit verbundene Sitzungsspeicher gelöscht und kann nicht mehr zugegriffen werden.
Was sind die Sicherheitsauswirkungen der Verwendung lokaler Speicher im Vergleich zu Sitzungspeicher?
Sowohl lokaler Speicher- als auch Sitzungsspeicher sind mit eigenen Auswirkungen auf die Sicherheit geliefert, die bei der Entscheidung über die Verwendung von Daten berücksichtigt werden sollten:
- Lokaler Speicher : Da lokaler Speicher über Sitzungen hinweg bestehen und auf verschiedene Registerkarten und Fenster aus demselben Ursprung zugänglich ist, kann er anfälliger für bestimmte Arten von Angriffen sein. Wenn beispielsweise ein böswilliges Skript den Zugriff auf denselben Ursprung erhält, kann es Daten gelesen oder ändern, die im lokalen Speicher gespeichert sind. Da lokale Speicherdaten in nur den clientseitigen Informationen in einfachem Text gespeichert sind, sollten sensible Informationen dort niemals gespeichert werden. Benutzer können auch den lokalen Speicher durch Browsereinstellungen löschen, was zu Datenverlust führen kann, wenn sie nicht korrekt von der Anwendung behandelt werden.
- Sitzungspeicher : Sitzungspeicher, das auf eine einzelne Registerkarte oder ein einzelnes Fenster isoliert und nach dem Schließen gelöscht wird, ist für nicht-persistente Daten etwas sicherer als lokaler Speicher. Es ist jedoch immer noch anfällig für Angriffe von Skripten, die in derselben Registerkarte oder im gleichen Fenster ausgeführt werden. Wie bei der lokalen Speicherung speichert der Sitzungsspeicher auch Daten im Klartext, sodass auch hier sensible Daten gespeichert werden sollten. Die vorübergehende Art der Sitzungspeicherung macht es weniger ein Ziel für anhaltende Datenangriffe, beseitigt das Risiko jedoch nicht vollständig.
Zusammenfassend sollte weder lokaler Speicher noch Sitzungsspeicher verwendet werden, um sensible Daten zu speichern, da das Risiko von clientseitigen Angriffen geeignet ist. Beide können nützlich sein, um nicht sensitive Daten zu speichern, aber Entwickler sollten sich ihrer jeweiligen Ausdauer und Umfang sowie des Potenzials für Manipulationen oder Verluste von Daten bewusst sein.
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen lokalem Speicher und Sitzungspeicher?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn