Перейти к основному содержимому

Опыт 2023

Какую самую сложную техническую задачу вы решали?

Недавним вызовом была реализация входа через WebAuthn, чтобы пользователи веб-версии могли аутентифицироваться с опытом, похожим на Face ID/Touch ID в нативном приложении.

Контекст

  • Цель: более плавный и быстрый UX входа в вебе
  • Ограничение: ограниченный предыдущий продакшен-опыт с WebAuthn
  • Сложность: различия поведения платформ на iOS и Android

Что делало задачу сложной

  • Настройка параметров и вариантов ceremony была чувствительной
  • Примеры в документации не полностью покрывали edge-case'ы реального продукта
  • Для корректного запуска биометрии на Android потребовались backend-правки совместимости

Что я сделал

  1. Проверил реализуемость по референсным прототипам
  2. Согласовал поток принятия решений для регистрации/логина с PM и backend-командой
  3. Итеративно протестировал параметры authenticator и fallback-поведение
  4. Совместно с backend скорректировал обработку challenge и credential для консистентности между устройствами

Результат

  • Опыт входа в вебе стал ближе к flow нативного приложения
  • В сочетании с улучшениями PWA снизилось трение для пользователей
  • Команда получила переиспользуемую экспертизу для будущих улучшений аутентификации

Референсы, использованные при реализации