サイトアイコン 協栄情報ブログ

JupyterHub再起動時にセッションをリセットする方法

jupyter-notebookロゴ

JupyterHub再起動時にセッションをリセットする方法


概要

JupyterHubは、ユーザーのログイン状態を署名付きCookieで管理している。
このCookieの署名鍵である cookie_secret を動的に生成することで、
サーバー再起動時に古いセッションを自動的に無効化し、
再ログインを求めることができる。


背景

長期間同じCookie署名鍵を使い続けると、古いセッションが残り続けたり、
他環境へのコピーや再利用によって認証整合性が崩れる可能性がある。

そのため、JupyterHub再起動時に cookie_secret を更新し、
古い署名のクッキーを破棄しておくことで、認証トークンを定期的にリフレッシュできる。


設定方法

設定ファイル: /etc/jupyterhub/jupyterhub_config.py

import os

# 再起動時に毎回ランダムな secret を生成
c.JupyterHub.cookie_secret = os.urandom(32)

この設定により、Hubを再起動すると新しいcookie_secretが生成され、
以前の署名で発行されたCookieはすべて無効になる。


注意事項


メリット


まとめ

モバイルバージョンを終了