Технические вопросы и ответы QA1745

Предоставление доступа к сертификатам и ключам, для приложения

Q: Я установил сертификат и закрытый ключ на мое устройство на iOS путем загрузки его с помощью Safari. Но когда я выполняю свое приложение, оно не может найти идентификационные данные, которые я просто установил. Почему это?

A: Пользователи могут установить цифровые идентификационные данные (сертификаты плюс их связанные закрытые ключи) на их устройства на iOS путем загрузки их из Safari путем открытия их как почтовых присоединений, и путем установки их с профилями конфигурации. Или, идентификационные данные могут быть продвинуты от сервера Управления мобильными устройствами (MDM). Однако идентификационные данные, установленные любым из этих способов, добавляются к группе доступа цепочки для ключей Apple.

Приложения могут только получить доступ к элементам цепочки для ключей в своих собственных группах доступа цепочки для ключей. Это означает, что элементы в группе доступа Apple только доступны предоставленным Apple приложениям, таким как Safari или Почта.

Для использования цифровых идентификационных данных в собственных приложениях необходимо будет записать код для импорта их. Это обычно означает читать в блобе PKCS#12-formatted и затем импортировать содержание блоба в цепочку для ключей приложения с помощью функции SecPKCS12Import задокументированный в Сертификат, Ключ и Ссылку Trust Services.

Таким образом, Ваши новые элементы цепочки для ключей создаются с группой доступа цепочки для ключей Вашего приложения.

Ссылка содержит ссылку на выборку AdvancedURLConnections, показывающую, как установить соединения защищенной сети в приложении для iOS.

Один способ настроить идентификационные данные по электронной почте. При настройке устройства пошлите связанному пользователю электронное письмо с их клиентскими идентификационными данными, присоединенными как файл PKCS#12. Кроме не дают ему стандартный PKCS#12 тип MIME или расширение, дают ему тип MIME и расширение, требуемое Вашим приложением. (Расширение «.p12» требуется iOS и не может требоваться другим приложением.) Пользователь может тогда открыть присоединение, которое запустит Ваше приложение, в которой точке можно предложить импортировать идентификационные данные. Этот тот же метод будет работать при хостинге идентификационных данных как веб-загрузки.

Можно узнать больше о требовании расширений файла в Темах Программирования Взаимодействия Документа для iOS.



История версии документа


ДатаПримечания
17.09.2014

Удалите ссылку на устаревшую Утилиту Конфигурации iPhone.

20.01.2012

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