0

私はいくつかの iOS アプリを開発しており、非常に機密性の高いデータをダウンロード/アップロードしています。私はその要求を行うために AFNetworking を使用していますが、私の質問は簡単です。すべてのアプリで 3 つの異なる証明書しか取得できません。これら 3 つの証明書のみを受け入れるように AFNetworking のレイヤーをカスタマイズできますか?

この操作の目的は、「Man To the Middle」攻撃を回避し、HTTP 交換中の追加情報の注入や取得を回避することです。

4

1 に答える 1

0

すべての AFNetworking 操作は、 というブロックを定義する AFURLConnectionOperation から継承しますauthenticationChallenge。操作でこのブロックを設定すると、AFNetworking が NSURLConnectionDelegate メソッドにどのように応答するかが定義されますconnection:didReceiveAuthenticationChallenge:。具体的には、検査する必要がありますchallenge.proposedCredential

すべての操作でこのブロックを設定したくない場合は、使用している操作の種類 (AFJSONRequestOperation など) をサブクラス化し、必要なconnection: willSendRequestForAuthenticationChallenge:動作でオーバーライドすることもできます。

于 2013-08-31T15:33:43.713 に答える