Вопрос

Я хотел бы протестировать приложение на симуляторе iphone, которое подключается к службе с использованием сертификата, подписанного нашим собственным центром сертификации.Я могу сделать это на реальном устройстве, добавив профиль обеспечения с сертификатом CA.Я думал, что наличие сертификата CA в стандартной связке ключей OSX будет работать, но это не так.

Таким образом, я могу получить доступ к сервису через Safari без предупреждения, но получаю ошибку при попытке запустить что-то в симуляторе.

Это было полезно?

Решение

Крипто API недоступны для симулятора.Я думаю, что кто-то в Apple курил крэк, когда принимал это решение, потому что я не понимаю, как наличие iPhone меняет результат криптографического алгоритма.Тем не менее, для разработки с помощью этих систем вам понадобится iPhone или iPod Touch.

Другие советы

Этот связь работал у меня

Метод canAuthenticateAgainstProtectionSpace возвращает да.ПРИМЕЧАНИЕ:он будет принимать любой сертификат, поэтому его следует удалить для производственных выпусков:то есть:ТОЛЬКО для тестирования

Кажется, все работает нормально, когда я указываю эмулятору на один из наших действующих серверов, который использует «настоящий» сертификат.Но я только что получил 1200 ошибок, пытаясь заставить эмулятор взаимодействовать с локальным тестовым сервером, который я настроил сегодня утром.

Таким образом, там должны быть криптобиблиотеки (иначе наше приложение не будет общаться с реальными серверами с настоящими сертификатами), но, похоже, существует проблема с самозаверяющими сертификатами.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top