私は、ユーザーにいくつかの外部oauth2プロバイダー(facebook)と私のアプリでログインする可能性を与えたいと思います。クライアントの一部は、ネイティブアプリでモバイルデバイス上で実行されています。
以下のアプローチのどちらを好むべきですか?
A)クライアントはとFacebookのユーザーのアクセストークンをそれぞれリクエストで送信する必要がありますか?各リクエストでバックエンドはfacebookにアクセストークンの妥当性を確認します。検証の結果に基づいて、バックエンドは承認を実行し、対応する結果をクライアントに返します。
OR B)バックエンドは、ユーザログオンでのみアクセストークンを検証するように要求し、独自のアクセストークンを発行し、アクセストークンをクライアントに返し、クライアントはこのアクセストークンを使用してサーバに要求します各リクエストでfacebookをconntactingしないようにするには?外部oauth2プロバイダ(facebook)を使用しているときに自分のアクセストークンを自分のアプリで発行する必要がありますか?
私はfacebookでauthを実装する方法についていくつかの質問を読んできました。ほとんどの開発者はBを使用していますが、なぜAを使用するのが良い/悪いのか説明していません。私は、ソリューションの利点として見る何
:
A)バックエンドは、発行さわやかな、これが唯一のFacebookの認可サーバによって行われますので、アクセストークンの検証を気にする必要はありません。
B)このソリューションは、リクエストごとにFacebookに接続する必要がないため、より効果的であるようです。