見出し画像

SessionとJWT Tokenのこと

AuthenticationとAuthorizationの違い

Authenticationはどうやっていたかと面接で聞かれた時に、私は前職でRuby/ Rails/ TypeScriptを使っており、RubyのCanCanというgemを使っていたと答えたら、それはAuthorizationだよねと言われました。

Authentication: ユーザーが誰かを認証
Authorization: その人が出来ることか(許可してあげれるか)を認証

何となく違うのはわかるんじゃけど、未だに似てると思います。
でもCanCanさんのrepoでもはっきり書かれています。

CanCan expects a current_user method to exist in the controller. First, set up some authentication (such as Authlogic or Devise).

https://github.com/ryanb/cancan?tab=readme-ov-file#getting-started-

SessionとJWT Token

こちらの記事を参考にさせてもらいました。私はvisual learnerなのでこういうダイアグラムがあると非常に助かります。
どうやらSessionIDが発行されてそれがDBにあるユーザーと結び付けられているかと、ただtokenが発行されているかという違いのようです。

次の記事も参考にさせてもらいました。
もっと詳しく踏み込んでいて、わかりやすいし、scalabilityのところはとても納得しました。前回のTechnical Interviewでこのように答えてたらよかったなと思いました。


今日も1日頑張りましょう〜

まだ寒いね〜

この記事が気に入ったらサポートをしてみませんか?