LoginSignup
1
0

More than 5 years have passed since last update.

railsのログインの仕組み

Posted at

HTTP はステートレスなので、ログインを維持するのは HTTP という通信内ではありません。ログイン情報は、ブラウザ内部と、サーバ(Rails)内部で保存されることになっています。そのブラウザとサーバが保存しているログイン情報を、ブラウザがサーバにアクセスするたびに毎回 HTTP で送受信します。そしてサーバ側はブラウザからのアクセスがあるたびに、受け取ったブラウザからのログイン情報を毎回自分(サーバ)の持っているログイン情報と照合して、ログインされているかを判定します。

このとき、ブラウザが持っているログイン情報は Cookie として保存され、サーバが持っているログイン情報は Session として保存されます。Cookie はブラウザ側の情報保管所で、Session はサーバ側の情報保管所です。

つまり、ログインしているかどうかは、お互いを照合することのできる情報が、ブラウザの Cookie と、サーバの Session に保存されているかどうかで決まります。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0