私はまだ Vue.js と Flask フレームワークの両方に慣れていません。Flask から JSON エンドポイントを使用し、Vue.js を使用して UI を表示する単純な todo アプリを作成しました。
私のアプリには、TODO、PROJECT、および USER モデルがあります。独自のユーザー モデルを使用して、「通常のログイン」を正常に実装しました。今回の流れ:
- ユーザーは、ユーザー名とパスワードを入力します。
- ハッシュ化されたパスワードでユーザーをデータベースに保存する Flask API への POST 要求。
- ユーザーは /auth エンドポイントを介してログインでき、JSON Web トークンを受け取ります。
- ユーザーがログアウトすると、トークンは破棄されます。
ここで、既存のユーザー モデルとともに Google サインインを実装したいと考えています。Google API への呼び出しを正常に作成し、vue.js クライアントで Google からユーザー データを取得できました。しかし、これは私が立ち往生しているところです。
- データベースに何を保存する必要がありますか? ユーザーのパスワードはありませんが、後でデータを Flask サーバーに送信したときに識別するためのトークンしかありません。
- Google Auth ユーザーと通常のユーザーの両方を同じデータベース テーブルに保存する必要がありますか? ユーザーが存在するかどうかを確認するために情報を取得するときに、それらを区別するにはどうすればよいですか?
将来的に安全なアプリケーションを構築することを非常に心配しているので、そのような状況でのベストプラクティスが何であるかを本当に理解したい.
ご協力いただきありがとうございます!