1. Основная задача: Разработать API для приложения с функционалом авторизации.

  2. Авторизация:

    • Реализовать метод авторизации через логин и пароль.
    • Реализовать альтернативный метод авторизации с использованием кода доступа.
  3. Регистрация:

    • При регистрации пользователь должен иметь возможность ввести код доступа для привязки к своему аккаунту.
    • Необходимо предусмотреть валидацию введенных данных.
  4. Проверка авторизации:

    • Создать API endpoint доступный только после авторизации, который будет отдовать уникальный ID аккаунта.
  5. Безопасность:

    • Обеспечить безопасное хранение логинов, паролей, кодов доступа и токенов.
    • Реализовать механизмы предотвращения и обработки неправильных попыток входа.
  6. API:

    • Разработать RESTful API для авторизации, регистрации, запроса ID и генерации токена.
    • Организовать возвращение подходящих HTTP статус-кодов в ответ на запросы.
  7. Документация:

    • Подготовить документацию к API, описывающую все доступные эндпоинты и форматы данных.
  8. Тестирование:

    • Покрыть код unit тестами для проверки корректности работы всех функций.
  9. Технологии:

    • Использовать Java для реализации бэкенда.
  10. Дополнительно (по желанию):

  • Предусмотреть методы для создания, обновления и удаления аккаунтов.
  • Добавить логирование ключевых событий в системе.