2010-01-12 2 views
6

Я разрабатываю фреймворк iPhone, который отправляет HTTPS-запросы для связи с общедоступным бэкэнд-сервером. В настоящее время у меня есть большая проблема с сертификатами ненадежного сервера.Как отправить HTTPS-запросы на хостинг с сертификатом ненадежного сервера в iPhone Simulator?

Сертификат бэкэнд-сервера не подписан доверенным ЦС, поэтому мой первый подход состоял в том, чтобы использовать приватные NSURLRequest разрешенияAnyHTTPSCertificateForHost. Хотя это работало так, как ожидалось, и было прекрасным, как временное решение, наш клиент требует чистого решения в качестве конечного результата. Поэтому я написал метод, который позволяет установить предоставленный сертификат из файловой системы в цепочке ключей, но этот метод не работает должным образом в симуляторе iPhone. Вместо этого сертификат устанавливается в ключевом коде Mac OS X хост-компьютера. К сожалению, если я вызываю метод sendSynchronousRequest NSURLConnection, я получаю ошибку «ненадежный сертификат сервера». Кажется, что NSURLConnection не может получить доступ к цепочке ключей Mac OS X для получения сертификата.

Я полагаю, что это правильно или я что-то пропустил?

Будет ли мой подход работать, если я запустил приложение на реальном iPhone-устройстве (у меня пока нет еще одного)?

Существует ли брелок в iPhone Simulator вообще?

Возможно ли отправить HTTPS-запросы на сервер с ненадежным сертификатом на iPhone Simulator или мне нужно использовать директивы прекомпилятора для реализации различных подпрограмм в зависимости от базовой платформы (имитатора или устройства, соответственно)?

Любая помощь очень ценится.

Спасибо, Matthias

+0

Возможный дубликат [Как использовать NSURLConnection для подключения к SSL для ненадежного сертификата?] (Http://stackoverflow.com/questions/933331/how-to-use-nsurlconnection-to-connect-with-ssl- for-an-untrusted-cert) –

ответ

1

Вы можете получить бесплатно доверенные SSL сертификаты на http://startssl.com

+0

Я только что попробовал, и он все еще показывался как «ненавязчивый» ... возможно, я сделал что-то не так. –

0

Да согласен с Beat Bolli, но я сделал это по запросу NSURL. Возможно, вы пропустите spmething.

 Смежные вопросы

  • Нет связанных вопросов^_^