PHP で「SameSite=Strict」を使用して Cookie を設定する方法: 開発者向けガイド

Mary-Kate Olsen
リリース: 2024-10-25 04:44:02
オリジナル
650 人が閲覧しました

How to Set Cookies with

PHP Cookie: "SameSite=Strict" のサポート

概要

進化する標準に対応Web セキュリティの観点から、Cookie の設定が大きな注目を集めています。重要なアップデートの 1 つは、「SameSite」属性の導入です。これにより、クロスサイト リクエスト フォージェリ (CSRF) とセッション ハイジャックに対する保護が強化されます。

「SameSite=Strict」に対する現在の PHP サポート

PHP バージョン 7.3 以降、「SameSite」属性を持つ Cookie の作成が完全にサポートされるようになりました。開発者は $options 配列を利用して Samesite 値を設定できるようになり、より安全な Cookie 管理が可能になります。

古い PHP バージョンのオプション

7.3 より前の PHP バージョンの場合、 「SameSite」属性を Cookie に組み込む代替ソリューションが存在します。これらのアプローチには次のものが含まれます。

1. Apache 構成:

Apache ユーザーは、構成ファイルに次の行を追加して、SameSite=Lax フラグを使用してすべての Cookie を更新できます:

Header always edit Set-Cookie (.*) "; SameSite=Lax"
ログイン後にコピー

2. Nginx 構成:

Nginx ユーザーは、次の構成を使用して同じ結果を達成できます:

location / {
    # your usual config ...
    # hack, set all cookies to secure, httponly and samesite (strict or lax)
    proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict";
}
ログイン後にコピー

3.ヘッダー メソッド:

Cookie はヘッダー メソッドを通じて直接設定でき、「SameSite」属性を含めることができます:

<code class="php">header("Set-Cookie: key=value; path=/; domain=example.org; HttpOnly; SameSite=Lax");</code>
ログイン後にコピー

4。 Cookie 設定のバグ:

PHP 7.3 より前の setcookie メソッドの既知のバグが悪用されて、「SameSite」属性を設定する可能性があります:

<code class="php">setcookie('cookie-name', '1', 0, '/; samesite=strict');</code>
ログイン後にコピー

注: このバグは PHP 7.3 で解決されているため、使用は避けてください。

以上がPHP で「SameSite=Strict」を使用して Cookie を設定する方法: 開発者向けガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!