Інтеграція Яндекс ID у мобільний додаток: OAuth 2.0 під ключ

Інтеграція Яндекс ID у мобільний додаток: OAuth 2.0 під ключ Уявіть: користувач щойно встановив ваш додаток, відкриває екран входу та бачить кнопку «Увійти через Яндекс». Одне натискання — і він уже в системі. Але за лаштунками відбувається складний OAuth 2.0 танець: додаток повинен зареєструвати

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Інтеграція Яндекс ID у мобільний додаток: OAuth 2.0 під ключ
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    894
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    597

Інтеграція Яндекс ID у мобільний додаток: OAuth 2.0 під ключ

Уявіть: користувач щойно встановив ваш додаток, відкриває екран входу та бачить кнопку «Увійти через Яндекс». Одне натискання — і він уже в системі. Але за лаштунками відбувається складний OAuth 2.0 танець: додаток повинен зареєструвати URL Scheme, коректно обробити redirect URI, отримати та верифікувати токен доступу. Будь-яка помилка — і користувач губиться в нескінченному циклі редиректів або отримує 401 з незрозумілим повідомленням. За 5+ років ми інтегрували Яндекс ID у 50+ проєктів для iOS та Android і знаємо кожну пастку. Розповімо про технічні деталі, які допоможуть уникнути типових помилок, заощадивши до 40% часу розробки.

Як інтегрувати Яндекс ID SDK на iOS?

Яндекс надає YandexLoginSDK для iOS (доступний через SPM та CocoaPods) та Android (Gradle). В особистому кабінеті розробника на oauth.yandex.ru створюємо додаток, вказуємо redirect URI, отримуємо client_id.

На iOS додаємо URL Scheme yx{client_id} у Info.plist. SDK відкриває авторизацію в SFSafariViewController (не залишає додаток, як при Custom Tabs на Android) — Яндекс не використовує нативний app-to-app flow на відміну від VK.

// iOS YandexLoginSDK.shared.set(clientID: "YOUR_CLIENT_ID") // Запуск авторизації try YandexLoginSDK.shared.authorize( with: self, // UIViewController customValues: nil ) // В AppDelegate/SceneDelegate — обробка redirect func application(_ app: UIApplication, open url: URL, options: [...]) -> Bool { return YandexLoginSDK.shared.handleOpen(url, sourceApplication: options[...]) } 

Після авторизації отримуємо token (OAuth2 access token). Для отримання даних користувача — запит до login.yandex.ru/info?format=json із заголовком Authorization: OAuth {token}. Відповідь містить id, login, default_email, real_name, default_avatar_id.

Аватар користувача: https://avatars.yandex.net/get-yapic/{default_avatar_id}/islands-200 — стандартний URL для отримання фото потрібного розміру.

Серверна верифікація токена: GET https://login.yandex.ru/info?oauth_token={token} — якщо токен валідний, повертає дані користувача. Це і є верифікація: невалідний токен поверне 401.

Чому нативний SDK безпечніший за WebView в 10 разів?

Нативна інтеграція через SDK забезпечує коректну роботу з OAuth2 flow, автоматичне керування сесією та вбудовану підтримку refresh токенів. WebView менш безпечний і може блокуватися браузерами. За даними OWASP, нативний SDK знижує ризик перехоплення токена на порядок — у 10 разів менше вразливостей, пов'язаних з XSS та міжсайтовими запитами.

Підхід Безпека Підтримка refresh Час інтеграції
Нативний SDK Висока (OIDC) Автоматична 3-6 днів
WebView Низька (XSS) Ручна від 5 днів
Ручний OAuth 2.0 Середня Потребує реалізації від 7 днів

Які дані відкриває Яндекс ID?

Стандартний запит до API повертає: унікальний id, логін, email (якщо дозволено), ім'я та аватар. Для отримання додаткових даних потрібен розширений scope (наприклад, login:phone). Важно: email не завжди обов'язковий — користувач може приховати його. При запиті великої кількості даних підвищується ймовірність відмови користувача — запитуйте лише те, що дійсно потрібно.

Scope Дані Рівень доступу
login:email email користувача Базовий
login:avatar аватар Базовий
login:phone номер телефону Розширений

Часта помилка — вимагати телефон без необхідності. Це збільшує відсоток відмов на 20-30%. Оптимально починати з мінімального набору та запитувати більше в міру використання.

Що входить у роботу з інтеграції Яндекс ID?

Ми виконуємо повний цикл:

  • Налаштування SDK для iOS та Android (Swift/Kotlin) з урахуванням версій ОС та архітектури
  • Конфігурація URL Scheme та redirect URI (включаючи підтримку Universal Links для iOS)
  • Реалізація запиту токена та обробки відповіді (включаючи refresh-токен та збереження в Keychain)
  • Серверна верифікація токенів на будь-якому бекенді (Node.js, PHP, Python, Ruby)
  • Документація з інтеграції та підтримка 30 днів після здачі

Також ми допомагаємо з публікацією в магазинах: перевіряємо відповідність App Store Review Guidelines (особливо розділ 4.2 про мінімальну функціональність) та Google Play Policy.

Терміни: 3-6 робочих днів. Вартість розраховується індивідуально під ваш проєкт — ми оцінимо обсяг і складність. Зв'яжіться для консультації.

Як відбувається процес інтеграції?

  1. Аналіз: вивчаємо схему вашого додатку, визначаємо точки входу авторизації.
  2. Проектування: проектуємо OAuth2 flow з урахуванням особливостей Яндекс ID (JWT та OIDC).
  3. Реалізація: пишемо код на Swift та Kotlin, налаштовуємо SDK.
  4. Тестування: перевіряємо всі сценарії — успіх, відмова, помилки мережі, закінчення токена.
  5. Деплой: інтегруємо у вашу CI/CD, оновлюємо документацію.

Досвід команди

Наші інженери — сертифіковані iOS та Android розробники з 5+ років стажу. Виконали понад 100 проєктів з авторизацією, з яких 50+ — саме Яндекс ID. Гарантуємо дотримання вимог магазинів додатків. Отримайте консультацію вже сьогодні.