ホームページ  >  記事  >  バックエンド開発  >  PHP で「SameSite=Strict」を使用して Cookie を設定する方法: 開発者向けガイド

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

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-25 04:44:02651ブラウズ

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。