自作アプリ作成記録19日目

さてDeviceを使う前に、どうやって認証をしていけば良いかを改めて考えてみる。

まずは認証方式としてsession方式とtoken方式のどちらが良いかを決める。色々と記事を参考にさせてもらった。ちょっと古い記事もあったが、仕組みを理解するには問題ないかなと思う。

完全理解とは流石にいかないが、今回はToken方式で実装を進めていく。主な理由として、

・SPAを実装してみたいので、なるべく処理が重たくならないようにしたい。

・Railsチュートリアルなどはsession方式だが、Token方式も試しに実装してみたい。

Token方式を取り入れるとして、実際の流れを整理してみる。それと認証サーバーはRailsがAPIサーバーと兼用で動くように実装したい(大規模アプリでは無いので負荷が大きくなるとは考えにくいので、認証サーバを別途立てる必要は無いと想定)

1.フロントエンドにてフォーム入力(Emailとパスワード)

2.フォームで受け取ったデータをRailsに送る

3.Railsにてトークンを発行して、フロントに戻す

4.晴れてログイン

こんな感じだろうか?1は教材を元にそれっぽいものを作ったので、2をどうやって作っていくかをもう少し深掘りしていく。

2-1. フロントエンドからRailsのエンドポイント(コントローラー?)にデータを投げる?

2-2. Railsの認証機能でAccess Tokenを発行?

2-3. クライアントのメモリにアクセストークンを保持
※LocalStorageに保存するというのは教材でも採用されていたが、JavaScriptで操作できてしまうという観点からメモリで実装をしたい。ページから離れてしまうとトークンが消えるということだが別に良い。

こちらの記事を参考にした。
https://applis.io/posts/how-to-authenticate-user

まずはRails側のトークンを扱う機能の実装からかな?

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