セキュリティ設定
設定ファイル「.htaccess」でできるセキュリティ設定です。
設置方法
下記内容を「.htaccess」内に記述してサーバの公開領域に設置する。
.htaccess
<IfModule mod_headers.c>
# セキュリティ:CROSの強制(COEP)
#Header add Cross-Origin-Embedder-Policy "require-corp"
# セキュリティ:CROS
#Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Origin "https://life-family.sakura.ne.jp"
# セキュリティ:CROS(COOP:window.open関数で開いたクロスオリジンのアクセス制限:開く側、受ける側で設定が必要)
Header add Cross-Origin-Opener-Policy "same-origin"
# セキュリティ:クリックジャッキング対策(同一オリジンのみフレームで開く)
Header always append X-Frame-Options SAMEORIGIN
# セキュリティ:XSS攻撃をブロック(ブラウザのクロスサイトスクリプティング防止機能を有効)
Header always set X-XSS-Protection "1; mode=block"
# セキュリティ:HSTS (HTTP Strict Transport Security) の導入
Header set Strict-Transport-Security "max-age=31536000; includeSubdomains; Preload"
# セキュリティ:CSP:HTTPとHTTPSのコンテンツが混在している場合、強制的にHTTPSで読込
Header always set Content-Security-Policy "base-uri 'self'; object-src 'none'; frame-ancestors 'none'; upgrade-insecure-requests"
# セキュリティ:プロトコルのセキュリティ水準が同一であるor向上する場合、リファラー情報送信
Header always set Referrer-Policy "no-referrer-when-downgrade"
# セキュリティ:使用できるブラウザの機能を制御する
Header always set Permissions-Policy "geolocation=(),midi=(),sync-xhr=(),accelerometer=(),gyroscope=(),magnetometer=(),payment=(),camera=(),microphone=(),usb=(),fullscreen=(self)"
# セキュリティ:PHPバージョンを返さない
Header set X-Powered-By ""
# セキュリティ:ブラウザが Content-type を検査(sniffing)することを無効
Header always set X-Content-Type-Options "nosniff"
# セキュリティ:クッキーのHttpOnly/Secure属性を付与
Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
# Search Engine NoIndex
#Header set X-Robots-Tag noindex
</IfModule>
注意点
DANGER
Webサーバ「Apache」で動作可能です。「nginx」では利用できません。
DANGER
設置するサーバにより既に適応されているものや、Webサーバのモジュールがインストールされていない環境があるので検証が必要です。