テクノロジー

「JWT を localStorage に置くな」はなぜ言われるのか、Cookie 回帰までの時系列整理

1: mkusaka 2026/05/27 23:43

JWTをlocalStorageに置くなと言われる理由を、2005〜Cookie回帰まで年表で解説しBFFやHttpOnly Cookieも整理する

2: roshi 2026/05/28 01:57

ガラケーの時も個体識別番号を送ってしまう問題とかあったのを思い出した。

3: atico 2026/05/28 05:28

徳丸氏もOWASP v5になった際にブラウザストレージへのセッショントークンの保存が容認されたと言及している様に、昨今のSSRの主流化により、Ajaxの呼び出しが不要になったから、またcookie認証が広がりだしただけ。

4: soulfulmiddleagedman 2026/05/28 06:33

ついこのあいだ、仕事で議論したとこなので、参加になるわ。

5: yoshioka627 2026/05/28 06:52

まとめてもらって感謝。歴史の話と今の話があったので理解が進みました

6: nguyen-oi 2026/05/28 07:07

JWTからCookie回帰の流れ、歴史のサイクルを感じて面白いな

7: shoh8 2026/05/28 07:16

輪廻 /ブラウザに持たされていた認証情報をBFFやサーバ側に押し返した

8: hirorinya 2026/05/28 07:26

歴史

9: circled 2026/05/28 07:28

SSRが出始めたあたりからフロントエンドが「一周回ってPHP」と言われ出した所以。そして今これ

10: snowcrush 2026/05/28 07:37

セッション管理がステートレスであることをまるでメリットかのように騒いでた人たち、何も学んでいないんだなと当時から苦々しく思っていた

11: lifeisadog 2026/05/28 07:39

主にウェブアプリ(SPA)の話です

12: maninthemiddle 2026/05/28 07:49

人の手で書かれた良いまとめ。

13: WildWideWeb 2026/05/28 07:54

HotwireやHTMXみたいなJavaScriptをなるべく書かない昔ながらのシンプルなアプローチまで遡ったら面白いな(追記:「昔ながら」ではないと某所で怒られました)。このところ支持者も増えてきてるそうですが。

14: mohno 2026/05/28 08:02

君のゆく道は果てしなく遠いなあ……。なので、ずっと手前で止まっている(←オイ)

15: miki3k 2026/05/28 08:06

よくまとまっていてわかりやすい

16: bfoj 2026/05/28 08:21

一周すれば最先端

17: strawberryhunter 2026/05/28 08:42

ちゃんと実装すると、Cookieが署名されているくらいの意味しか残らない。クライアントサイドでは署名も活用できないからマジで無駄なんだわ。

18: k-holy 2026/05/28 08:50

長年1人で設計・実装・環境構築・運用しているLAMPおじさんとしては、jQueryすらめんどくせー、SPAとか言われだした時点ですでについて行けてなかったけど、シンプルになって戻ってきてくれるなら何よりwww

19: akasaka_34 2026/05/28 08:56

ウェブのトレンドは当てにならんね。

20: auto_chan 2026/05/28 09:06

.netでAがSのPでWebするみたいなオールドなスタイルで生活してると一生クッキー🍪なのでいつのまにか世界が一巡してるのぼけーっと見てるだけ~。連携システムがJWTだとほえーって思いながら付き従うくらいで。

21: yojik 2026/05/28 09:22

BFF等がありサーバサイドに処理があるならCookie一択、SPAならLocalStrage一択(expireの間隔やペイロードに何を含めるかは注意する)。

22: pure_luca 2026/05/28 09:48

“BFF を立てるなら、クライアント ↔ BFF 間で JWT を使う理由はもはや無くなり、伝統的な Cookie セッションに戻る”

23: sigesaba 2026/05/28 09:54

"BFF を立てるなら、クライアント ↔ BFF 間で JWT を使う理由はもはや無くなり、伝統的な Cookie セッションに戻る、と徳丸氏は述べています。"

24: ockeghem 2026/05/28 10:16

私のポストをマクラに詳しい解説をいただきありがとうございます

25: infobloga 2026/05/28 10:17

ひどい切り取り。JWTをlocalStorageに置くことがセキュリティ的に問題ないということを言っている流れで一歩引いて最近のトレンドを解説した部分。

26: lainof 2026/05/28 10:36

本題とは関係ないのに、途中では業界でも色々なパターンがある話をしてたのに、現在業界全体的でマイクロサービスが当たり前であるかのように話してるのが残念。

27: hakob 2026/05/28 10:39

長すぎてみんなちゃんと読んでるのかな。

28: mole-studio 2026/05/28 10:59

単純にSSRするとき認証状況がサーバーから見えないからクッキーの方が自然ってずーーーっと前から思ってた

29: toaruR 2026/05/28 11:48

つか、クロスドメイン的に厳しいよね?localStorageだと

30: dekaino 2026/05/28 13:01

なるほど わかりやすい

31: aarx 2026/05/28 13:33

amplifyがlocalstorage使ってるせいもあると思ってる。AWSなら使わざるを得ないがあれは最低のクソ。

32: twotiger 2026/05/28 14:45

前提としてBFFを使うウェブサイトでの話。BFFないなら別

33: nicht-sein 2026/05/28 15:00

後半後で読む

34: KoshianX 2026/05/28 19:27

localStorage に置くのは XSS 見つかったときに読まれるからダメというのはわかるが、結局2023年の App Router 登場で BFF に JWT 置くのが普及してうまく回るようになったって感じか。

35: jatta 2026/05/29 00:11

非常に,非常に学びのある記事だった

36: JULY 2026/05/29 14:01

この辺、仕事で扱うことがなくて、ぼんやりと「JWT で即時無効化ができないから、適材適所で」という話を、事故りそうな話だなぁ、と思ってたけど、今はその一歩先に行っているのを知ってスッキリした。