Доверие собственным сертификатам на iOS 10.3

TL;DR: Переходим к Настройки > Основные > Об этом устройстве > Доверие сертификатов и включаем переключатель для своего собственного сертификата.

Как и многие другие, Charles Proxy стал неотъемлемой частью моего ежедневного инструментария. Каждый человек в моей QA команде ежедневно использует его для своих проектов. Недавно во время тестирования на iOS 10.3, один из членов моей команды не смог получить свой SSL-трафик для прокси. Обычно, когда кто-то сталкивается с этим, это из-за того, что пользователь не установил корневой сертификат Charles Proxy на устройстве, которое пытается проксировать. Затем, когда вы пробуете проксировать SSL-трафик в Charles, вы получите следующую ошибку: SSLHandshake: Received fatal alert: unknown_ca

Charles Proxy всегда будет предлагать полезное предложение:

«Возможно, вам потребуется настроить браузер или приложение, чтобы доверять корневому сертификату Charles. См. SSL Proxying в меню «Справка».»

iOS отказывается от подтверждения SSL, потому что центр сертификации, который выпустил используемый сертификат SSL, не находится в его хранилище доверенных сертификатов. Раньше, чтобы решить эту проблему, нам просто нужно было перейти на «http://ssl.charles» в Safari на устройстве, и тогда мы могли бы установить корневой CA от Charles и сказать устройству, что мы хотим ему доверять. В этом случае QA уже выполнил эти шаги. После некоторого копания вокруг, он нашел проблему. Настройки > Основные > Об этом устройстве >  Доверие сертификатов.

Установленный ним корневой сертификат Charles Proxy появился в списке, но его переключатель был отключен. Хотя этот раздел существовал до iOS 10.3, по умолчанию при установке пользовательского сертификата, iOS будет безоговорочно доверять ему. Никаких дальнейших действий не требуется. Начиная с iOS 10.3, по умолчанию для новых пользовательских сертификатов, устанавливается не доверять. Если вы хотите доверять пользовательскому сертификату установленному Вами (Зачем еще вы его установили?), необходимо перейти к указанному выше разделу и вручную включить переключатель, чтобы доверять сертификату. Любые сертификаты, установленные и доверенные до iOS 10.3, по-видимому, работают, поэтому вы не столкнетесь с этим, пока не попытаетесь использовать новый корневой сертификат.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *