Wie implementiert man das SameSite-Attribut für PHP-Cookies?

Patricia Arquette
Freigeben: 2024-10-24 20:26:29
Original
180 Leute haben es durchsucht

How to Implement the SameSite Attribute for PHP Cookies?

Gleiches Site-Attribut für PHP-Cookies

RFC 6265 führt das „Same Site“-Attribut für Cookies ein, das die Cookie-Sicherheit erhöht, indem es Cross-Site Request Forgery (CSRF) einschränkt. Angriffe.

PHP-Unterstützung:

Für PHP >= v7.3:

Die Funktion setcookie() unterstützt das „Same Site“-Attribut über das $options-Array. Die gültigen Werte sind:

  • Keine
  • Lax
  • Streng

Für PHP < v7.3:

Aufgrund von PHP-Kerneinschränkungen sind mehrere Problemumgehungen verfügbar:

Apache-Konfiguration:

Fügen Sie die folgende Zeile hinzu Ändern Sie alle Cookies mit dem Attribut „Same Site“:

Header always edit Set-Cookie (.*) "; SameSite=Lax"
Nach dem Login kopieren

Nginx-Konfiguration:

Aktualisieren Sie die Konfiguration so, dass sie Folgendes enthält:

proxy_cookie_path / "; secure; HttpOnly; SameSite=strict";
Nach dem Login kopieren

Header-Methode:

Sie können Cookies explizit mithilfe von Headern setzen:

header("Set-Cookie: key=value; path=/; domain=example.org; HttpOnly; SameSite=Lax");
Nach dem Login kopieren

Ausnutzen eines Fehlers:

Verwenden eines veraltete setcookie()-Methode, die einen Fehler ausnutzt:

setcookie('cookie-name', '1', 0, '/; samesite=strict');
Nach dem Login kopieren

Hinweis: Dieser Fehler wurde in PHP 7.3 behoben.

Referenzen:

  • [Chrome-Status: Funktionsdokumentation](https://www.chromestatus.com/feature/5633521622188032)
  • [HTTPbis-Entwurf](https://tools.ietf.org/ html/draft-west-first-party-cookies)
  • [HTTPbis neuester Entwurf](https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis)
  • [PHP-Handbuch: setcookie()](https://php.net/manual/en/function.setcookie.php)

Das obige ist der detaillierte Inhalt vonWie implementiert man das SameSite-Attribut für PHP-Cookies?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!