Как защитить API при доступе из iOS приложения?

OAuth 2.0 — это протокол, позволяющий безопасно предоставлять доступ к защищенным API от имени пользователя. Auth0 выступает сервером авторизации, генерируя токены доступа. Для настройки в Auth0 создается API, где устанавливается имя, уникальный идентификатор (URI), и алгоритм подписи токена (рекомендуется RS256). Важно настроить срок действия токена и разрешения (scopes), определяющие, что приложение может делать от имени пользователя.
Как защитить API при доступе из iOS приложения?
Изображение носит иллюстративный характер

Для запроса токена доступа, в iOS-приложении необходимо обновить функцию login, добавив параметр audience, использующий идентификатор API, и scope, включающий необходимые разрешения. Полученный токен доступа передается в заголовке Authorization HTTP-запроса. Для хранения учетных данных в приложении рекомендуется использовать CredentialsManager. Возвращенный токен JWT можно декодировать для проверки.

Код для вызова API включает в себя структуры данных, обработку ошибок, обертку Auth0 CredentialsManager, добавление токена в HTTP-заголовок и получение данных. Для отображения результатов вызова API в интерфейсе используется переменная состояния isAPICall для переключения экранов. При первом вызове API будет необходимо пройти авторизацию.

Создание собственного API для тестирования можно выполнить, используя различные бэкенд-технологии и платформы. Для продакшена необходимо использовать Refresh Token для обновления токенов доступа. Использование refresh токенов, описано в другой статье.


Новое на сайте

19817В Луксоре нашли стелу с римским императором в образе фараона 19816Экипаж Artemis II о моменте, когда земля исчезла за луной 19815Почему луна выглядит по-разному в разных точках земли? 19814Adobe экстренно закрыла опасную дыру в Acrobat Reader, которую хакеры использовали с... 19813Метеорный поток, рождённый из умирающего астероида 19812Когда робот пишет за тебя прощальную смс 19811Что общего у лунной миссии, толстого попугая, загадочной плащаницы и лекарства от диабета? 19810Какие снимки Artemis II уже стали иконами лунной программы? 19809Кто на самом деле хочет сладкого — вы или ваши бактерии? 19808Как рекламные данные 500 миллионов телефонов оказались в руках спецслужб? 19807Экипаж Artemis II вернулся на землю после десяти дней в космосе 19806Зелёная и коричневая луна: почему геологи Artemis II уже не могут усидеть на месте 19805Эксперты уверены в теплозащитном щите Artemis II, несмотря на проблемы предшественника 19804Выжить внутри торнадо: каково это — когда тебя засасывает в воронку 19803Аляскинские косатки-охотники на млекопитающих замечены у берегов Сиэтла
Ссылка