4

キャンバスアプリに認証解除コールバックを実装しました。Facebookはhttps経由でDeauthorizeCallbackにpingを実行できないように見えますが、httpでは問題ありません。私はすべての接続をログに記録しており、Facebookからのコールバックにpingを実行した記録はありませんが、自分でpingを実行するとログに記録されます。さらに、FacebookがURLデバッグツール(https://developers.facebook.com/tools/debug)を介してコールバックにpingを実行している場合、成功します。

httpsが機能しないことを考えると、Facebookのサーバーは私の証明書の発行者/権限を気にしないと思います。Facebookのバックエンドプロセスと連携する認証局の決定的なリストはありますか?または、承認された認証局のリストに含めるためにFacebookに新しい認証局を送信する方法はありますか?

編集:私のSSL証明書は、GoDaddyの単純なDBAであると私が信じている「StarfieldTechnologies」によって発行されました。私は通常GoDaddyを避けていますが、このSSLは安価でした。たぶん、私が支払ったものを、いわば手に入れているのかもしれません。

4

1 に答える 1

3

私はついにこれの問題が何であるかを理解し、他の人々が私の愚かさから利益を得ることができるようにそれを文書化したいと思いました。

私の能力はソフトウェア開発にあります。私は熟練したウェブサイト管理者ではありません。私は通り抜けるのに十分知っています。問題は、WebサーバーのSSL構成が原因でした。

2年前に証明書を購入したとき、インストールが不完全でした。ドメイン用にPEMファイルを作成してインストールしましたが、認証局バンドル(私の場合はsf_bundle.crt)を認識するようにWebサーバーを構成しませんでした。

これの直接の結果は、Webブラウザーから安全な認証解除コールバックにアクセスし、Webブラウザーが必要なすべてのルート証明書と中間証明書で構成されている場合、アプリケーションを正常に「認証解除」することです。

ただし、Webクライアント(認証解除コールバックにpingを送信するFacebookバックエンドコンピューターなど)が問題のWebサーバーにアクセスしようとして、利用可能なすべての中間証明書がまだない場合、クライアントはアクセスできないため、SSLハンドシェイクは失敗します。ルートCA証明書に戻るまで証明書を認証します。

これが理にかなっていることを願っています。私が言ったように、ウェブ管理は私の強みではなく、私は一歩を逃しました。Webサーバー構成にCAバンドルを適切にインストールすると、Facebookバックエンドコンピューターがサイトを認証し、認証解除コールバックに正常にpingを実行できるようになります。

ここで不明な点がありましたら、お気軽にお問い合わせください。できればお手伝いします。

于 2013-11-16T21:58:27.373 に答える