質問: ### 前提・実現したいこと どちらの方法でも何らかの情報(多分Session_id)をクライアントのCookieに残さないと ステートフルにはならないと思うんですが、その場合、セキュリティリスク的にはどのようにして 差が生まれてくるのでしょうか? インメモリDB等サーバ側に残した方が安全と言われているのは知っていますが、 結局Session_idを元にしてコネクションを確立するので、それが盗聴されてしまえば一緒だと思えて しまうのですが、どうなんでしょうか? ### 発生している問題・エラーメッセージ ` エラーメッセージ ``` ### 該当のソースコード ``` ここに言語名を入力 ソースコード ``` ### 試したこと ここに問題に対して試したことを記載してください。 ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。
回答: > > 結局Session_idを元にしてコネクションを確立するので、それが盗聴されてしまえば一緒だと思えて > > しまうのですが > > > いえ、全く違います。Cookieは**クライアント側で**保存されるものですので、セッションデータまでCookieに書き込むと「Cookieだけでデータを解読してセッションの中身を知ることができる危険がある」「不適切なCookieをクライアント側で生成することで、適切でないセッションデータを作成する」などの行為ができてしまいます。 セッションの中身をサーバサイドで持つ場合、セッションデータがCookieとしてクライアントに送られることはありませんので、上に述べたような事態は起こりません。 (セキュリティとは別件ですが、Cookieはリクエストのたびに送受信されますので、リクエストの通信量がその分増加する、容量制限が厳しい、などの問題もあります)