SaaSアプリを構築しています。これをhttp://mysaasapp.comと呼びましょう。ユーザーがサインアップすると、サブドメイン名http://myinstance.mysaasapp.comまたはカスタムドメイン名http://instance.mycompany.comなどを使用してインスタンスにアクセスします。
ユーザーがインスタンス内でそれらのサービスのアカウントにリンクできるように、他のサービス(Facebook、Twitterなど)との統合を検討しています。Twitterは、OAuthリダイレクトコールバックに関しては非常に寛大です(コールバック/リダイレクトURLは、OAuthリクエストを行うときに設定できます)。ただし、Facebookはそれほど寛大ではなく、コールバック/リダイレクトドメインはfacebook.comのアプリの構成内で設定されます
ユーザーがインスタンスでカスタムドメイン名を使用する場合、サイトのサブドメイン(http://myinstance.mysaasapp.com)を非アクティブにすることを選択できます。これは、OAuthのコールバックドメインをmysaasapp.comに設定して、それが機能することを期待できないことを意味します。
解決策は、OAuthプロキシ(http://proxy.mysaasapp.com)を使用することです。以前にHybridAuthを使用しましたが、これをOAuthプロキシに簡単に変換できるはずです。
そうは言っても:
AuthリクエストのみをプロキシするためにOAuthプロキシを使用する必要がありますか?アクセストークンを取得したら、プロキシを介してリクエストのプロキシを続行する必要がありますか、それともインスタンスから直接プロバイダーに接続する必要がありますか?つまり、(認証後の)API呼び出しを特定の定義済みドメインに制限するOAuthで保護されたAPIはありますか?
リクエストがアプリのインスタンスからのみ発信され、レスポンスがアプリのインスタンスにのみ送信されるように、OAuthプロキシをどのように保護する必要がありますか?