Я разрабатываю платформу iPhone, которая отправляет Запросы HTTPS для общения с общедоступным сервером бэкэнда. В настоящее время у меня есть большая проблема относительно недоверяемых сертификатов сервера.
Сертификат о сервере бэкэнда не подписывается доверяемым CA, таким образом, мой первый подход должен был использовать частный allowsAnyHTTPSCertificateForHost NSURLREQUEST. В то время как это работало как ожидалось и было прекрасно как временное обходное решение, наш потребительский спрос чистое решение как конечный результат. Поэтому я записал метод, который позволяет устанавливать предоставленный сертификат от файловой системы в связке ключей, но этот метод не работает как ожидалось в iPhone Simulator. Сертификат установлен в связке ключей Mac OS X хост-машины вместо этого. К сожалению, если я называю sendSynchronousRequest метод NSURLCONNECTION, я получаю "недоверяемую ошибку" сертификата сервера. Кажется, как будто NSURLConnection не может получить доступ к связке ключей Mac OS X хоста для получения сертификата.
Мое предположение корректно, или я пропускал что-то?
Мой подход работал бы, если бы я запустил свое приложение на реальном устройстве iPhone вместо этого (я еще не имею тот в наличии)?
Там существует связка ключей в iPhone Simulator вообще?
Вообще возможно отправлять Запросы HTTPS на сервер с недоверяемым сертификатом на iPhone Simulator, или я должен использовать директивы предварительного компилятора для реализации различных стандартных программ в зависимости от базовой платформы (средство моделирования или устройство, соответственно)?
Любая справка высоко ценится.
Спасибо, Matthias
Вы можете получить бесплатные доверенные SSL-сертификаты по адресу http://startssl.com
Возможно, библиотека ASIHTTPREQUEST может помочь с этим?