Skip to content

セキュリティ設定

設定ファイル「.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サーバのモジュールがインストールされていない環境があるので検証が必要です。