Процес аутентифікації користувача є невід’ємною частиною безпеки мобільних додатків. Добре продумані алгоритми аутентифікації дозволяють розробникам гарантувати, що треті сторони не отримають доступ до даних користувача, які зберігаються в додатку.
Процес аутентифікації може базуватися на секретних кодах, створених користувачем (наприклад, паролі та PIN-коди), одноразових паролях, надісланих через SMS, апаратних маркерах або біометричних характеристиках (наприклад, відбиток пальця). Користувачам необхідно пройти аутентифікацію, щоб підтвердити свою особу та отримати доступ до вибраного мобільного додатка.
Два типи потоків входу в систему
Існує два основних типи потоків входу в систему. Перший тип називається «рідний потік входу». Як ви можете здогадатися з його назви, користувачі повинні ввести логін та пароль за допомогою «рідного» додатка (система не перенаправляє користувачів у веб-браузер). Ключова перевага цього типу потоку полягає в тому, що він забезпечує комфортну взаємодію з користувачем.
Другий тип потоку входу називається «веб-потік входу». Цей потік є більш складним: коли користувачі відкривають додаток, система перенаправляє їх на сторінку входу в веб-браузер. Основним недоліком цього підходу є те, що він може порушити користувацький досвід.
Незважаючи на цей недолік, більшість розробників вибирають цей підхід замість рідного потоку входу, оскільки він забезпечує вищий рівень безпеки.
Використання веб-потоку входу дозволяє підвищити захист від атак повторного відтворення під час виконання та додати багатофакторну аутентифікацію. У деяких галузях додатковий фактор аутентифікації вимагається законом. Наприклад, додатки з охорони здоров’я повинні використовувати багатофакторну аутентифікацію, щоб відповідати федеральному закону США (Health Insurance Portability and Accountability Act). Крім того, фінансові мобільні додатки повинні відповідати стандарту безпеки даних індустрії платіжних карток.
Дванадцяти-факторні мобільні додатки: 3 основних правила, яких слід дотримуватися
Коли розробники вибирають веб-підхід та використовують дванадцяти-факторний мобільний додаток, вони роблять наступне:
-
Уникають використання Android WebView або будь-якого іншого вбудованого веб-вікна для показу сторінки входу в систему. Натомість використовують додаток мобільного браузера, як-от iOS Safari або Chrome, щоб забезпечити кращий рівень безпеки.
-
Користуються перевагами криптографії Proof Key for Code Exchange (PKCE) або iOS Universal Links/Android App Links, щоб пом’якшити атаки перехоплення коду авторизації.
-
Використовують код авторизації OAuth 2, щоб надати доступ до захищених ресурсів, таких як веб-інтерфейси API.
Оскільки ринок мобільних додатків швидко розвивається, стає очевидним, що розробники не можуть поставити під загрозу ні досвід роботи, ні безпеку додатків. Намагаючись знайти оптимальне рішення, експерти розробили Hypermedia Authentication API – новий підхід, який поєднує в собі переваги обох типів потоку входу, які розглядалися вище. Hypermedia Authentication API значно покращує потік користувачів, а також забезпечує безпеку та гнучкість найвищого рівня.
Поки цей стандарт ще не отримав широкого визнання. Але він виявився ефективним, і його однозначно варто спробувати. Важливо зазначити, що дванадцятифакторний мобільний додаток сумісний з цим новим стандартом.
Управління токенами
Коли ми говоримо про дванадцятифакторний мобільний додаток, ми говоримо насамперед про два типи токенів: недовговічні токени доступу та довговічні токени (токени оновлення). Щоб захистити мобільний додаток від хакерів і раптової втрати даних, важливо переконатися, що токени можуть бути скасовані (відкликані) у будь-який час. Щоразу, коли користувач виходить із мобільного додатка, система відкликає запити на токени та активує захист ресурсів.
Біометрична аутентифікація
Серед іншого, дванадцятифакторний мобільний додаток також забезпечує біометричну аутентифікацію. Це дозволяє користувачам входити в додаток за допомогою сканування відбитків пальців, голосових команд або ідентифікатора обличчя.
Більшість користувачів віддають перевагу біометричній аутентифікації серед інших варіантів. Чому? Люди, як правило, забувають свої паролі або використовують один пароль для багатьох різних облікових записів, ризикуючи своїми конфіденційними даними. З цієї причини користувачам легше та безпечніше входити в систему, використовуючи відбитки пальців, а не паролі та PIN-коди. Таким чином, біометрична аутентифікація запобігає ризикам витоку персональних даних, покращуючи комфорт користувачів.