Documentation

§セキュリティヘッダの設定

Play には、HTTP レスポンス内のデフォルトヘッダを設定することで、セキュリティの問題を軽減し、新規アプリケーションの防御レベルを増強することのできるセキュリティヘッダフィルタが備わっています。

§セキュリティヘッダフィルタの有効化

セキュリティフィルタを有効にするには、build.sbt 内の libraryDependencies に Play filters プロジェクトを追加してください:

libraryDependencies += filters

ここで、この filters にセキュリティフィルタを追加しますが、通常これはプロジェクトルートに Filters クラスを作成することで実現します:

Scala
import javax.inject.Inject

import play.api.http.HttpFilters
import play.filters.headers.SecurityHeadersFilter

class Filters @Inject() (securityHeadersFilter: SecurityHeadersFilter) extends HttpFilters {
  def filters = Seq(securityHeadersFilter)
}
Java
import play.api.mvc.EssentialFilter;
import play.filters.headers.SecurityHeadersFilter;
import play.http.HttpFilters;

import javax.inject.Inject;

public class Filters implements HttpFilters {

    @Inject
    SecurityHeadersFilter securityHeadersFilter;

    public EssentialFilter[] filters() {
        return new EssentialFilter[] { securityHeadersFilter };
    }
}

Filters クラスはルートパッケージに置くか、もし違う名前にする、あるいは違うパッケージに置く場合は、application.conf 内で play.http.filters を使って設定する必要があります:

play.http.filters = "filters.MyFilters"

§セキュリティヘッダの設定

Scaladoc は play.filters.headers パッケージにあります。

このフィルタは HTTP レスポンス内のヘッダを自動的に設定します。これは、以下に示す application.conf 内の設定で制御することができます。

あらゆるヘッダは、例えば以下のように値に null を設定して無効化することができます:

play.filters.headers.frameOptions = null

設定オプションの全一覧は Play filters の reference.conf を参照してください。

Next: CORS の設定


このドキュメントの翻訳は Play チームによってメンテナンスされているものではありません。 間違いを見つけた場合、このページのソースコードを ここ で確認することができます。 ドキュメントガイドライン を読んで、お気軽にプルリクエストを送ってください。