環境、構成
[フロントエンド]
Rails4
UI、バックエンド(WebAPI)とのやり取りを担当
[バックエンド]
Rails4
フロントエンドからリクエストを受け付けてJSONを返すWebAPI
質問内容
上記のような構成で認証が必要なWebアプリケーションを開発しているのですが、
ユーザ認証関連の処理でどうするのがよいのか不明な点があるので質問させて頂きます。
現状、以下のような流れでユーザ認証処理を実装しています。
- フロントエンドでログインフォームにID、パスワードを入力してSubmit
- SubmitされたID、パスワードをバックエンドにPOST
- バックエンドはPOSTされてきたID、パスワードで認証処理を行い、認証に成功すればアクセストークン等の認証情報をJSONで返す
- フロントエンドは返ってきた認証情報を保持し、認証済みでないとアクセスできないページに移動
この流れの4.が不明な点でして、バックエンドから返ってきた認証情報はフロントエンドでどのように保持すればいいのでしょうか?
今は単純に認証情報をセッションに保存してページ移動の度にバックエンドに認証情報の整合性チェックをリクエストする、といった方法で実現しています。
これでも普通に要求を満たした動作はしているので問題は無いのですが、セッションで保持する
ということに漠然とした不安があります。
フロントエンドとバックエンドが分離していない、RailsのModel, View, Controllerを用いたシンプルなアプリケーションの場合は
認証情報はセッションに保持するのが普通だと思いますが、
今回のような構成でも認証情報の保持にセッションを使うのは普通なのでしょうか?
そもそもの話
フロントエンドにRailsを使わずにAngularJSやVue.jsなどのJSフレームワークを使えばこのようなことを気にする必要もないのでしょうか?
「まずフロントエンドにRailsを使っていたらバックエンドと分離する意味が無くない?」と思われるかもしれませんが、
私がフロントエンドに疎いサーバサイド寄りのレガシーなエンジニアでして、とりあえず動くものを作るためにフロントエンドもRailsで構築しました。
いずれはJSフレームワーク等で置き換えるつもりではあります。
以上、ご回答頂ければ幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。