Postメソッドでログイン資格情報を渡すことにより、HTTPS経由でaspx Webサイトにログインするアプリを作成しています。 Charles Proxyを使用して応答を確認すると、seal.verisign.comからSSLハンドシェイクに失敗したエラーが表示され、ログインページに戻ります。この問題を解決するために何をする必要があるかわかりません。
私はこれをiPhoneシミュレーターでテストしています。
サーバー実装にアクセスできません。
何か案は?
ありがとうございました!
IOS> = 10.3では、Charles Proxy証明書をインストールした後(@ ashish-vermaの優れた回答に従って)、Settingsで有効にする必要もあります- >一般->About->証明書の信頼設定:
ここでの完全セットアップ: http://www.devsbedevin.net/debugging-ios-ssl-traffic/
おそらく実際のデバイスでテストすると、より多くの洞察が得られるでしょうか?
チャールズでそれを行うには:
開発マシンで:
IDeviceで:
最後に:
Charlesのサイトの詳細: http://www.charlesproxy.com/documentation/proxying/ssl-proxying/
また、connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challengeメソッドへの応答を取得していますか?
それでも証明書をインストールしても解決しない場合は、SSLピンニングが原因である可能性があります。
Charlesproxy.comから:
SSLピン留め一部のアプリはSSL証明書のピン留めを実装しているため、ルート証明書を具体的に検証することに注意してください。アプリ自体がルート証明書を検証しているため、Charlesの証明書を受け入れず、接続に失敗します。 CharlesルートSSL証明書を正常にインストールし、SafariでSSLプロキシを使用してSSL Webサイトを閲覧できるが、アプリが失敗する場合、SSLピンニングが問題である可能性が高い。
この問題を解決するには、SSL証明書をインストールする必要があります。
次の手順を実行します
開くSafariブラウザのiOSシミュレータ
アドレスバーに"www.charlesproxy.com/getssl"と入力します
サーバーに、使用しているURLの有効な証明書がない可能性があります。確認しましたか?
ブラウザを使用してURLを試してみると、警告が表示されますか?
モバイルデバイスにSSL証明書をインストールする必要があります。
Charles ProxyのSSL証明書をインストールする方法をオンラインで検索します。
古いユーザー資格情報をすべて削除してから、新しいSSL証明書を再インストールします。