カスタムの Web ベースのソーシャル ネットワーク アプリ用のネイティブ モバイル アプリを開発しています。grant_type=password
Web サーバーと通信するための REST API を構築しており、認証方法 (フロー)として OAuth2 を選択しました。
Web アプリを使用すると、ユーザーは外部サービス (Facebook や Twitter) を使用してログインおよびサインアップできます。モバイルアプリでも同じことを許可する必要があります。問題は、どうすればそれができるかということです。
ピンタレスト モバイル アプリは状況を管理できます (添付の画像を参照)。ここで使用されているフローは何ですか?
それらは、従来の OAuth を利用したアプリ (Facebook API で直接 OAuth クライアントとして機能するモバイル アプリ) のように動作しますか? もしそうなら、どのようにしてモバイルアプリを Pinterest サーバーで認証できますか? Facebook OAuth アクセス トークンを資格情報として渡していますか?
問題のグラフィカルな表現 (- の????
付いた矢印を参照):
Website API Mobile app Facebook OAuth
+ + +
| | |
| | /oauth2/token |
| +------------------------------>|
| | |
| | OAuth Access Token |
| |<-----------------------------+|
| | |
| ???? | |
|- - - - - - - - - - - - - -| |
| | |
| | |
| OAuth Access Token | |
|+------------------------->| |
| | |
| | |
| API Usage (w/ token) | |
|+------------------------->| |
|<-------------------------+| |
| | |
|+------------------------->| |
|<-------------------------+| |
| | |
| ... | |
+ + +
更新: この質問は私のものと非常に似ています.これが正しい道である場合、2 番目と 3 番目のステップ (カスタム API への Facebook トークンの送信と、トークン自体の検証) を行うことはできません。追加の OAuth2 グラント タイプ (つまりfacebook_token
)?