встроенная аутентификация airwatch-sdk с сертификатом пользователя и ioni c 4 / cordova - PullRequest
0 голосов
/ 16 января 2020

Мы разработали мобильное приложение для клиента с платформой 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

...