2

あなたの助けが必要です :)

私は自分のアプリから http リクエストを https リクエストに変更しようとしています。今のところ、私はASIHTTPRequestを使用し、このチュートリアルに従いました。私は https と ssl のこの分野ではまったくの初心者であることを知っておく必要があります。本当に助けていただければ幸いです。

これは私のhttpリクエストのコードです:

- (void)fetchDataFromServer{

// Create Instance
ASIFormDataRequest *request = [[ASIFormDataRequest alloc] initWithURL:url];


// Parameter der POST Anfrage setzen
[request setPostValue:@"anything" forKey:@"app_action"];


[request setValidatesSecureCertificate:NO]; // no certificate so far
request.delegate = self; // assign delegate
[request startAsynchronous]; // send request

}

それはうまくいきました。しかし、今はデータ接続を保護する必要があるため、httpsを使用する必要があります。

この必要性をどのように実現できますか?ASIHTTPRequestはそのための正しいものであり、それをサポートしていますか? サーバー内の証明書について何を知る必要がありますか?

あなたが知っていることをすべて教えてください:)

どうもありがとうございました - あなたは最高です。

よろしくクリス

4

1 に答える 1

2

証明書の検証は良いことであり、ほぼ常に実行する必要があります。HTTP リクエストに対して無効にする必要はありません。

この規則には、実際には 1 つだけ例外があります。信頼できる認証局によって適切に署名された証明書を持たない HTTPS Web サービスに接続する必要がある場合は、証明書の検証をオフにする必要があります。

Web サービスに有効な証明書がない理由

  1. ハッキングされている !これが、証明書と証明書の検証の理由です。
  2. Web サービスが正しく構成されていない SSL サーバーで実行されています。
  3. 証明書の有効期限が切れており、サーバーが維持されていません。
  4. Web サービスの所有者は、信頼できる認証局によって署名された証明書を取得するために支払うには安すぎます。
  5. 一般に公開されていない開発サーバーは、署名付き証明書を取得する手間をかける価値がない場合があります。

Web サービスに適切に署名された証明書がないかどうかを知る方法

  1. Web ブラウザーで Web サービスにアクセスし、証明書エラーが発生するかどうかを確認します。
  2. アプリ内の無効な証明書エラーを確認してください。

証明書の検証をオフにする代替手段

  1. 信頼できる認証局によって署名された証明書を取得します。
  2. 独自の認証局を作成し、独自の認証局で証明書に署名し、信頼できる認証局として iOS デバイスに認証局をインストールします。
于 2012-10-12T14:59:26.260 に答える