2017-10-10 14 views
1

クライアント側のアプリケーション:アンドロイドアプリ、サーバー側:フラスコベースの残りのAPI、JWTトークンでログインします。2つの異なるログイン方法を使用してください:1つのアプリケーションでJWTトークンとGoogleサインイン

セキュリティを強化するため、Googleとログインを組み合わせたいと考えています。 、素朴なソリューション クライアント側にある:

問題がある、私は必要 「SPLIT」2例のログインコードへ - それは、それほど悪くはない しかし、その後上のサーバへの要求ごとに - jwtトークン、Googleのユーザーデータがあるかどうかを確認し、正しい呼び出しを送信する必要があります。

また、サーバ側でも、私はトークンやGoogleのユーザーがいた天気をチェックするために、Apiのすべての部分で自分のコードを "分割"する必要があります。 この素朴な解決策は私にとっては醜いと思われますが、私はこの問題に対するより良いアプローチがあるかどうか尋ねています。

私の友人は、jwtを接続してGoogleだけを使用するように勧めましたが、ユーザーの側からは、2つのオプションを選択して選択する方が良いと思います。

答えて

0

わかりやすい答え:Googleにログインした後、ユーザーにJWTトークンを与えないのはなぜですか?私たちは通常これをどのようにして行うのですか?クライアントのログイン - > Googleトークンの送信 - >サーバーがJWTトークンを検証して送信 - >ユーザーがJWTトークンを使用し、サーバーがGoogleトークンを使用してプロファイルの画像や名前などのユーザー情報を更新します。

+0

私はJWTとGoogleトークンとの間の接続を望んでいません。 Googleでログインしたくないユーザーに、ユーザー名とパスワードのある通常のログイン( )と、Googleでログインして使用するユーザーに許可します。 2つのソリューションをマージし、まずGoogleでログインしてから、jwtトークンを使用することをお勧めします。しかし、ユーザーがGoogleを使いたくない場合は、 – JohnSnowTheDeveloper

+0

私が知る限り、これが唯一の方法です。そうしないと、ユーザーとGoogleの間でアクティブな認証が必要になります。 – jobbert

+0

私はそれについて詳しく読んだことがあります。 ログインの場合、ユーザーはGoogleのログインや通常のログインを使用できることを理解しています.JWTトークンを返信して使用するのと同じ方法です。したがって、アプリのすべての場所を変更する必要はありません。私は現在、JWTのみに設定されているFlaskサーバーでそれを行う良い方法を見つけ出そうとしています – JohnSnowTheDeveloper

関連する問題