セッションを用いた自動ログインをロジックが理解できてないので誰か教えてください

今度、完全に理解する予定の事柄として「セッションを用いた自動ログインをロジック」というものがあります。全く今、完全に理解できていないのでこのブログを読んだ人、知ってたら教えて欲しいです。こんな稚拙な文章を質問サイトに投稿するわけに行かず、だらだら自分のブログに書きなぐっているというわけです。これは、いわゆる、アウトプットすることで頭が整理される法則を用いたものになっています。

例えばPHPとMYSQLで会員登録&ログインシステムを構築したとします。ここまでは理解できるのですが、セッションを用いた自動ログインの論理が完全に理解できていません。クッキーを用いた自動ログインの論理は理解できています。パスワードとメールアドレスをクッキーに持たせておいて、ユーザーがブラウザにやってきたら、クッキーを取得(パスワードとメールアドレス)して、そのクッキーの値をログインに用いるということで自動ログインを実現できます。

要は、この仕組みと同じですか?ただ、クッキーだとセキュリティ上非常に危険だと読みました。ど牛てクッキーは危険で、セッションはあんまり危険ではないのでしょうか。

セッションの仕組みに関しての解説を読んだり聞いたりしてると、どうやらセッションというのは、クッキーの値を鍵として、その鍵を用いてセッション(つまり値を)取得するらしいですが、どうしてこれだと、安全性が増すのでしょうか。結局クッキーの値を盗られてしまえば変わらないのではないでしょうか。

また、もっとも安全な自動ログインシステムの例として、自動ログイン用のクッキーを毎回生成して、それをセッションを取り出す鍵として扱うというものがありました。これに関しては全く理解が進んでいません。

藤沢瞭介(Ryosuke Hujisawa)
  • りょすけと申します。18歳からプログラミングをはじめ、今はフロントエンドでReactを書いたり、AIの勉強を頑張っています。off.tokyoでは、ハイテクやガジェット、それからプログラミングに関する情報まで、エンジニアに役立つ情報を日々発信しています!

未整理記事