SSL 経由で OAuth 2.0 プロバイダーへの API 呼び出しを行っています。Net::HTTP#verify_mode
過去に Ruby で に設定するのが一般的だったことは知っていますがVERIFY_NONE
、これは悪いことです。私が使用しているすべての Ruby ライブラリは Faraday にコールバックします。Faraday を掘り下げたところ、Net::HTTP
が構成されており、行われている呼び出しで#verify_mode
が適切に設定されていることがわかりましたVERIFY_PEER
。OAuth プロバイダーの SSL 証明書が適切に検証されていることを確認するには、他に何をすべきですか? 証明書の受け入れと拒否の間で動作を切り替えることができる優れたスモーク テストはありますか?
どの公開鍵が使用されているのか、開発環境のどこにあるのかわかりません。私が使用している OAuth プロバイダーは Google です。以前の投稿では、Mac が OpenSSL にパッチを適用してキーチェーンにフックし、Equifax Secure Certificate Authority を使用することを示唆しています。この証明書の信頼モードを切り替えると、コールバック リダイレクトが発生したときに Chrome の動作が変わりますが、API 呼び出しを開始した Ruby コードで例外が発生することはないため、最初の呼び出しに別のキーが使用されていると思われます。電話。