間接的な層が多すぎて、私を混乱させています。
通常の OAuth では、通常、最終レグで証明書利用者 (別名、サーバー) に、後で公開鍵を介して復号化される認証トークンをポストバックする必要があります。
これまでに見た唯一の例は次のとおりです。
String FacebookURL = "https://www.facebook.com/dialog/oauth?client_id=" + FacebookClientID.Text + "&redirect_uri=" + Uri.EscapeUriString(FacebookCallbackUrl.Text) + "&scope=read_stream&display=popup&response_type=token";
ただし、ブローカーは、ユーザーが自分のサーバーにアクセスすることなく正当であるかどうかを判断できるようです。次の行で示されているとおりです。
if (WebAuthenticationResult.ResponseStatus == WebAuthenticationStatus.Success)
それはどのように安全ですか?
- サーバーが復号化を行うべきではありませんか?
- さらに言えば、サーバーが接続を開始するべきではありませんか? このようにして、ランダムなビットをソルトに送信できるので、facebook はリターン トークンをセキュリティで保護できますか?
その場合、リダイレクト URI は完全に任意であり、ブローカーは IP (ID プロバイダー) からの応答を本質的に解析します。
プロセスに関与するサードパーティのサーバーはありますか。私が気付いていないこれを可能にするMS独自のサーバー?
リダイレクト URI が自分のサービスを指す URI でなければならない場合、どのように処理してリクエストに応答すればよいでしょうか?