Мы разработали мобильное приложение для клиента с платформой ioni c -cordova. Приложение представляет собой простой интерфейс для системы отслеживания времени, и мы вызываем REST API с помощью собственного http-клиента ioni c. API REST размещен в инфраструктуре клиентов, и приложение должно самостоятельно аутентифицироваться с помощью сертификата. Это можно сделать с помощью имени пользователя и пароля. Это прекрасно работает, и приложение работает вне AirWatch без SDK.
Клиент хочет развернуть приложение через «Airwatch / Workspace ONE» и использует встроенную аутентификацию с указанным пользователем сертификатом c. Мы интегрировали SDK, как это описано в документации, удалили все плагины, добавили SDK в качестве первого плагина и снова добавили другие плагины. Мы реализовали sdkEventListener, чтобы получить состояние контейнера airwatch, и это привело к «initSuccess» и правильному имени пользователя. В android trusmanager мы можем увидеть сертификат и проверить его распространение. На устройстве предустановлено chrome, и вызывать API можно через веб-браузер. Chrome просит у меня сертификат. То же самое работает с браузером deploeyd "Workspace ONE - Web".
Если мы запускаем приложение, запрос не аутентифицирован. Ожидаемое поведение заключается в том, что airwatch-sdk берет на себя аутентификацию и автоматически выбирает нужный сертификат или, по крайней мере, запускает диалог выбора (работал с более старым приложением с 2018 года).
Похоже, что сертификат не будет использоваться. (Это проблема)
В документации это одна из основных функций «Плагин автоматически запускается как на устройствах Android и iOS, так и автоматически запускает AirWatch SDK» и «добавляет перечисленные функции для вашего приложения - например, встроенная аутентификация / единый вход ". Профиль SDK настроен соответственно «Интегрированная аутентификация с сертификатом».
Есть ли кто-нибудь, кто может подтвердить рабочий SDK с помощью cordova, ioni c и встроенной аутентификации с помощью сертификата в аналогичной среде? Кто-нибудь может сообщить об известных проблемах?
Буду признателен за любую помощь.
=============================== ===========================
Примечания:
В другом приложении с 2018 года мы разработали приложение ioni c 3 для того же клиента. Интегрированная аутентификация работала в старой среде. Приложение было завернуто в консоль AirWatch. Теперь перенос не выполняется для обоих приложений.
Мы попробовали некоторые плагины Cordova, основанные на Cordova-Plugin-Client-CER-аутентификации, но безуспешно.
Наш клиент также связывается со службой поддержки
мы запустили знакомую топи c на форумах сообщества vmware https://support.workspaceone.com/posts/360038350234
Среда:
Fedora 30
Android Инструменты платформы SDK: 29.0.5
Android SDK Tools 26.1.1
android -minSdkVersion 24
ioni c -cli v5.4
ionic / angular 4.7.1
угловой / основной 8.2.13
cordova 9.0.0
Airwatch / Workspace ONE Console 1903
тестовое устройство: Galaxy A5 (2017) - Android 8.0.0 (API Level 25) VMWare Intelligent Hub v19.11.1.5
Ioni c / Плагины Cordova:
airwatch-sdk-plugin для cordova v1.5.1
cordova-plugin-whitelist 1.3.3
cordova-plugin-statusbar 2.4.2
cordova-plugin-device 2.0.2
cordova-plugin-splashscreen 5.0.2
cordova-plugin-ioni c -webview 4.0.0
cordova-plugin-ioni c -клавиатура 2.0 .5
cordova-plugin-badge 0.8.8
cordova-plugin-advanced-http 2.3.0
cordova-plugin-file 6.0.2