OAuth 2.0 — это протокол, позволяющий безопасно предоставлять доступ к защищенным API от имени пользователя. Auth0 выступает сервером авторизации, генерируя токены доступа. Для настройки в Auth0 создается API, где устанавливается имя, уникальный идентификатор (URI), и алгоритм подписи токена (рекомендуется RS256). Важно настроить срок действия токена и разрешения (scopes), определяющие, что приложение может делать от имени пользователя.
Для запроса токена доступа, в iOS-приложении необходимо обновить функцию login, добавив параметр audience, использующий идентификатор API, и scope, включающий необходимые разрешения. Полученный токен доступа передается в заголовке Authorization HTTP-запроса. Для хранения учетных данных в приложении рекомендуется использовать CredentialsManager. Возвращенный токен JWT можно декодировать для проверки.
Код для вызова API включает в себя структуры данных, обработку ошибок, обертку Auth0 CredentialsManager, добавление токена в HTTP-заголовок и получение данных. Для отображения результатов вызова API в интерфейсе используется переменная состояния isAPICall для переключения экранов. При первом вызове API будет необходимо пройти авторизацию.
Создание собственного API для тестирования можно выполнить, используя различные бэкенд-технологии и платформы. Для продакшена необходимо использовать Refresh Token для обновления токенов доступа. Использование refresh токенов, описано в другой статье.
Изображение носит иллюстративный характер
Для запроса токена доступа, в iOS-приложении необходимо обновить функцию login, добавив параметр audience, использующий идентификатор API, и scope, включающий необходимые разрешения. Полученный токен доступа передается в заголовке Authorization HTTP-запроса. Для хранения учетных данных в приложении рекомендуется использовать CredentialsManager. Возвращенный токен JWT можно декодировать для проверки.
Код для вызова API включает в себя структуры данных, обработку ошибок, обертку Auth0 CredentialsManager, добавление токена в HTTP-заголовок и получение данных. Для отображения результатов вызова API в интерфейсе используется переменная состояния isAPICall для переключения экранов. При первом вызове API будет необходимо пройти авторизацию.
Создание собственного API для тестирования можно выполнить, используя различные бэкенд-технологии и платформы. Для продакшена необходимо использовать Refresh Token для обновления токенов доступа. Использование refresh токенов, описано в другой статье.