博多南ウェブサービスのblog

博多南ウェブサービスのサービス紹介

【Play Framework 2.8.x と play-pac4j サンプル】Cookie によるセッション管理をしたい

Play Framework を始めたばかりの方向けに、サンプルを進めるうえで困ったところを共有する目的で書いています。

Play Framework 2.8.x 、および play-pac4j v5.1 を使って、Cookie によるセッション管理をした時のメモです、

以下、目次

前提

  • 自前でパスワード等の管理はしたくない
  • かといって Firebase Authentication 等は使わない(使えない、自由度がほしい等)
  • stateless なセッション管理をしたい

参考にしたところ

実装してみて

  • play-pac4j の PlayCookieSessionStore を使えば、そのまま使える
  • pac4j の OidcProfile は、id token で帰ってきたユーザー情報をすべて持っており、PlayCookieSessionStore の clearUserProfiles で、セキュリティ上問題になりそうな情報 (id token, access token, refresh token) は消去して cookie に登録しているっぽい
  • cookie で不必要なユーザー情報を送りたくないので、clearUserProfiles を override して不必要な情報を消去した

Githubこちら

以上でした。