Featured image of post 【PlayFramework2.7】Cookieに保存されるSession情報の有効期限などの属性を変更する方法【Java/Scala】

【PlayFramework2.7】Cookieに保存されるSession情報の有効期限などの属性を変更する方法【Java/Scala】

655文字

application.confからCookieの設定を変更しよう

PlayFrameworkを採用してWebシステムを開発している方ならご存知だと思いますが、PlayFrameworkには一般的なSessionの概念は存在せずに、Cookieに情報を保存する事で擬似的にSessionを再現しています。

とはいえ、セキュリティ的な観点でログインセッションやSecureな設定を変更したい事もあるかと思います。

今回はapplication.confから簡単に、保存するCookieの属性情報を変更する方法をご紹介しようと思います。

手順

前提

今回は以下の環境での作業と致します。

前提
  • PlayFramework 2.7系

まずはデフォルト値の確認

まずは何も設定していない状態のCookieの設定情報をみてみましょう。

種類説明デフォルト値
NameCookieの名称PLAY_SESSION
Domain送信先ドメインlocalhost
Path送信先パス/
Expire / Max-AgeCookie有効期限Session
HttpOnlyCookieヘッダー以外からの読み取り制限TRUE
SecureHTTPS通信でのみ送信FALSE

では、これらの値を上書きしてみましょう。

play.http.session配下のキーで上書き

設定はconf/application.confに以下のように記述する事で上書きする事が出来ました。
今回は名称と有効期限を変更してみようと思います。

[adsense-responsive]

conf/application.conf
play {
  http {
    session{
      cookieName = "NEW_PLAY_SESSION"
      maxAge = 3 days
    }
  }
}

確認

では、実際に起動して確認してみましょう。

正常にCookieの名称と有効期限が上書きされていますね♪

終わりに

以上のように、簡単にCookie(セッション)の名称や有効期限を変更する事が出来ました。

品質を高めるには、この辺の細かい設定も決めておく事が大事なのでぜひ試してみて下さい♪