WordPressの総SSL化に伴い、cookieにsecure属性を設定しました。
せっかく、SSLでアクセスできるのに、secure属性がないためhttpでアクセスするとcookieが平文で流出してしまいます。(図1の赤枠内)
secure属性を設定するとhttpでアクセスしてもcookieが流出しません。(図2)
secure属性設定なし | secure属性設定あり |
---|---|
対策は、下記のサイトを参考に実施しました。
SSL で暗号化しても Cookie で secure 属性を指定しないと盗聴される可能性があるかもしれない
WordPressはphpサーバを利用しているのでphp.iniを編集します。
【前提】
- Wordpressで総SSL化が済んでいる
【手順】
- php.iniの編集
1.php.iniの編集
# vi /etc/php.ini
; http://www.php.net/manual/en/session.configuration.php#ini.session.cookie-secure
session.cookie_secure = 1 <<==1で、有効化します。
; Whether or not to add the httpOnly flag to the cookie, which makes it inaccessible to browser scripting languages such as JavaScript.
; http://www.php.net/manual/en/session.configuration.php#ini.session.cookie-httponly
session.cookie_httponly = 1 <<==1で、有効化します。(cookieがjavascriptで利用できないように)
session.cookie_httponly = 1は今回のsecure属性とは直接関係ありません。が、念のために設定しておきます。