ホームページ  >  記事  >  バックエンド開発  >  PHPでCookieを設定するHTTPONLY属性の方法を詳しく解説

PHPでCookieを設定するHTTPONLY属性の方法を詳しく解説

黄舟
黄舟オリジナル
2017-03-07 09:50:254054ブラウズ

以下のエディターは、PHP で Cookie の HTTPONLY 属性を設定する方法に関する記事を提供します。編集者はこれがとても良いと思ったので、参考として共有します。エディターをフォローして見てみましょう

httponly は、主にユーザーの Cookie が盗まれる可能性がある問題を解決するために Microsoft が作成した拡張機能です。

私たちがメールボックスやフォーラムにログインすると、次回他のページにアクセスすると、ブラウザーが自動的に Cookie を渡し、一度ログインできるようになります。見るためにログインする必要があるすべてのコンテンツ。つまり、本質的には、すべてのログイン ステータスは Cookie に基づいているということです。ログインする Cookie が他人に取得されたと仮定すると、個人情報が漏洩する危険があります。もちろん、考えてみてください。どうすれば他の人が顧客の Cookie を取得できるでしょうか?それはブラウザ内で実行されている悪意のある人のプログラムに違いありません。現在世界中を飛び回っている不正なソフトウェアであれば、この状況を解決するには httponly を使用しない手はありません。JavaScript がブラウザ内の Cookie にアクセスする問題を解決するために使用されます。想像してみてください。ブラウザで実行されている Flash プログラムが Cookie を取得できるのです。 IE6の

SP1はhttponlyをサポートしているので比較的安全です。

PHPの設定

PHP5.2以降はすでにHttpOnlyパラメータの設定をサポートしており、php.iniでのグローバルHttpOnlyの設定もサポートしています
---------- - -----------------------------------------------
セッション。 cookie_httponly =
- ---------------------------------------------- ---- --

グローバル Cookie HttpOnly 属性をオンにするには、その値を 1 または TRUE に設定します。もちろん、コード内での有効化もサポートしています:

<?php ini_set("session.cookie_httponly", 1); 
 // or session_set_cookie_params(0, NULL, NULL, NULL, TRUE); 
?>

Cookie 操作関数 setcookie 関数およびsetrawcookie 関数も特別に追加されており、HttpOnly オプションとして 7 つのパラメーターが使用されます。これらを有効にする方法は次のとおりです。PHP5.1 および PHP4 より前のバージョンでは、header 関数を使用して回避する必要があります。 :

<?php
setcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE); 
setrawcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE);
?>

以上 PHP で Cookie を設定する HTTPONLY 属性メソッドの詳細な説明です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。

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