Мы используем пользовательские сертификаты для аутентификации из нашего мобильного приложения на сервер F5. Мы протестировали процесс, используя тестовый сертификат, который мы установили, и создали хранилище ключей для использования при создании нашего объекта SSLContext. Для производства мы используем MDM для динамического создания и установки сертификата пользователя на устройство Android. Я считаю, что сертификат помещается в папку /data/misc/keystore. Проблема, с которой мы столкнулись, заключается в том, что мы не можем получить доступ к этому сертификату пользователя и создать с ним SSLContext.
В нашем тестировании мы убедились, что сертификат находится на устройстве, установив Open VPN для Android. Сертификат отображается в разделе «Сертификаты Android» в Open VPN, но требует, чтобы пользователь выбрал его (это не вариант для нашего приложения, нам нужно получить сертификат программно).
Все, что мы нашли, связано либо с сертификатами CA (к которым у нас есть доступ), либо с файлом .cer или .pfx, а также с установкой и созданием хранилища ключей, как мы делали с нашим тестовым сертификатом.
Есть ли способ получить доступ к установленным пользователем сертификатам для использования при создании SSLContext?
Наша версия Android — 4.1.2 (API 16).
Мы новички в разработке Android, и мы будем признательны за любые рекомендации.
Спасибо,
Майк