セキュリティ対策ヘッダ tomcat

※ざっと検証したことをメモしてますので、間違いがあればご指摘ください。

検証環境 OS : CentOS7 tomact : 7.0.92

システム全体への設定方法

以下の設定を<tomcat設置ディレクトリ>/conf/web.xmlへ追加する

  <filter>
    <filter-name>SecurityFilter</filter-name>
    <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>SecurityFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

特定のコンテンツへの設定方法

以下の設定を<tomcat設置ディレクトリ>/webapps/<特定のディレクトリ>/WEB-INF/web.xmlへ追加する

  <filter>
    <filter-name>SecurityFilter</filter-name>
    <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>SecurityFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

設定結果

curl -I http://IPアドレス:ポート番号/
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Frame-Options: DENY               <-付与されたセキュリティヘッダ
X-Content-Type-Options: nosniff     <-付与されたセキュリティヘッダ
X-XSS-Protection: 1; mode=block     <-付与されたセキュリティヘッダ
Content-Type: text/html;charset=ISO-8859-1
Transfer-Encoding: chunked
Date: Mon, 14 Jan 2019 07:06:24 GMT