it-swarm.com.de

Kann jemand erklären, was wp_session_tokens sind und wofür sie verwendet werden?

Ich versuche zu verstehen, wie WordPress feststellt, wo ein Benutzer angemeldet ist oder nicht. Ich habe gelesen, dass es nur mit den Cookies gemacht wird. aber mit WordPress 4 gibt es eine neue Ergänzung: wp_session_tokens. Ich habe versucht, den Kodex zu lesen und im Internet zu suchen, aber es gibt nicht viele nützliche Informationen.

Fragen:

  1. Was ist die typische Verwendung von wp_session_tokens?

  2. Kann ich sie zum An-/Abmelden eines Benutzers verwenden? Oder sollte ich mich einfach auf die Funktionen set_current_user und set_auth_cookie verlassen, um die Benutzeranmeldung zu verwalten?

  3. Gibt es irgendwelche Nachteile von wp_session_tokens?

Würde mich sehr freuen, wenn Sie etwas Zeit haben, um zu erklären, was diese Sitzungstoken bewirken.

3
TheBigK

Normale Cookies , die von WordPress verwendet werden, um Sie für einen bestimmten Zeitraum angemeldet zu halten, dienen dazu, zu überprüfen, ob ein Benutzer angemeldet ist. Selbst wenn Sie Ihren Computer schließen, bleiben diese beim erneuten Einschalten erhalten.

Sitzungstoken sind etwas anderes. Sie sollen Informationen zwischen mehreren Seitenaufrufen übertragen. Das typische Beispiel ist der Inhalt eines Einkaufswagens, der angezeigt werden soll, während Sie durch die Seiten eines Online-Shops blättern. Sie könnten diese Informationen mithilfe von Abfrageargumenten (wie www.example.com\?cart="book:Moby_Dick_1799847h4") übergeben, aber dazu müssten jedes Mal viele Informationen gesendet werden. Stattdessen wird das Token übergeben und der Server weiß, welcher Warenkorbinhalt angezeigt werden soll.

Sofern das Sitzungstoken nicht als Cookie auf Ihrem PC gespeichert ist und der Server den Warenkorbinhalt für dieses Cookie speichert, werden die Sitzungen geschlossen, sobald Sie Ihren Browser schließen. Sitzungstoken sind also weniger dauerhaft als Cookies.

Sie können Sitzungstoken verwenden, um zu überprüfen, ob noch Benutzer angemeldet sind. Dadurch werden Benutzer gezwungen, sich bei jedem Öffnen der Site anzumelden. In diesem Fall müssten Sie auch den normalen Anmeldevorgang deaktivieren.

Es kann vorkommen, dass die Verwendung von Sitzungstoken zur Identifizierung von Benutzern fehlerhaft ist. Wenn Sie beispielsweise eine große Site haben, die auf mehrere Server verteilt ist, besteht möglicherweise eine gültige Sitzung mit einem Server. Der Lastenausgleich kann jedoch entscheiden, Sie an einen anderen Server zu senden, wodurch Sie Ihre Sitzung verlieren und sich erneut anmelden müssen. Der Ansatz mit Cookies würde davon nicht betroffen sein, da alle Server dieselbe Datenbank abrufen, um festzustellen, ob Sie legitim angemeldet sind.

Fazit: Wenn Sie nicht wirklich mit Sicherheitsverfahren vertraut sind, sollten Sie sich an das halten, was WordPress Ihnen bietet.

2
cjbj