Я создаю приложение для iOS, которое будет работать в режиме «киоска». Часть приложения требует, чтобы пользователи могли выполнять поиск в каталоге организации. Я хотел бы поддерживать Azure AD через API Azure Graph, чтобы обеспечить эту функцию.
Я не хочу требовать интерактивного входа в систему при запуске приложения и не хочу использовать дополнительную веб-службу; Я хочу, чтобы приложение iOS просто получало доступ к API Azure Graph через REST.
Я осведомлен о рисках, связанных с кэшированными учетными данными, однако использование «служебных учетных записей» для неинтерактивных входов в систему довольно хорошо установлено, доступ доступен только для чтения, а учетные данные могут быть защищены в связке ключей iOS.
Я просмотрел множество примеров Azure и прочитал документацию, и мне кажется, что метод, который предоставляет то, что мне нужно _ 1_ недоступен в библиотеке iOS ADAL (и либо является классом ClientCredential
).
Чтобы уточнить, как я хочу, чтобы мое приложение работало:
- Пользователь устанавливает приложение из магазина приложений и запускает его в первый раз.
- В рамках настройки они проходят проверку подлинности в Azure AD, предоставляя своего клиента, идентификатор клиента приложения и ключ приложения. Если они не могут пройти аутентификацию с помощью ключа приложения, идентификатор пользователя / пароль приемлем, если:
- Им больше никогда не предлагается пройти аутентификацию
Есть ли здесь решение, или я просто откажусь от Azure AD?