Kuki PHP: Menyokong "SameSite=Strict"
Pengenalan
Dengan standard yang semakin berkembang keselamatan web, tetapan kuki telah mendapat perhatian yang ketara. Salah satu kemas kini penting ialah pengenalan atribut "SameSite", yang meningkatkan perlindungan terhadap pemalsuan permintaan merentas tapak (CSRF) dan rampasan sesi.
Sokongan PHP Semasa untuk "SameSite=Strict"
Bermula dari PHP versi 7.3, penciptaan kuki dengan atribut "SameSite" telah disokong sepenuhnya. Pembangun kini boleh menggunakan tatasusunan $options untuk menetapkan nilai tapak yang sama, membolehkan pengurusan kuki yang lebih selamat.
Pilihan untuk Versi PHP Lama
Untuk versi PHP sebelum 7.3, penyelesaian alternatif wujud untuk memasukkan atribut "SameSite" ke dalam kuki. Pendekatan ini termasuk:
1. Konfigurasi Apache:
Pengguna Apache boleh menambah baris berikut pada fail konfigurasi mereka untuk mengemas kini semua kuki dengan bendera SameSite=Lax:
Header always edit Set-Cookie (.*) "; SameSite=Lax"
2. Konfigurasi Nginx:
Pengguna Nginx boleh menggunakan konfigurasi berikut untuk mencapai hasil yang sama:
location / { # your usual config ... # hack, set all cookies to secure, httponly and samesite (strict or lax) proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict"; }
3. Kaedah Pengepala:
Kuki boleh ditetapkan terus melalui kaedah pengepala, membenarkan kemasukan atribut "SameSite":
<code class="php">header("Set-Cookie: key=value; path=/; domain=example.org; HttpOnly; SameSite=Lax");</code>
4. Pepijat Tetapan Kuki:
Pepijat yang diketahui dalam kaedah setcookie sebelum PHP 7.3 boleh dieksploitasi untuk menetapkan atribut "SameSite":
<code class="php">setcookie('cookie-name', '1', 0, '/; samesite=strict');</code>
Nota: Pepijat ini telah diselesaikan dalam PHP 7.3 dan menggunakannya harus dielakkan.
Atas ialah kandungan terperinci Cara Menetapkan Kuki dengan \'SameSite=Strict\' dalam PHP: Panduan untuk Pembangun. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!