Техническое задание: Система управления лицензиями и админ-панель
Цель проекта
Автоматизировать ручное управление доступом клиентов к контенту в ПК-приложении (лаунчере) через удобную веб-админку и централизованный сервер лицензий.
Основные функциональные требования
1. Веб-админ-панель
- Простая авторизация для администратора.
- Список всех клиентов с возможностью поиска/фильтрации.
- Для каждого клиента необходимо настроить:
- Дата окончания лицензии - до какого числа оплачен доступ.
- Список игр - управление доступом через галочки (включить/выключить).
- Статус аккаунта - «Активно» или «Отключено» (ручное управление).
- Интерфейс должен быть минималистичным и удобным для ежедневного использования.
2. Логика работы системы
- При сохранении настроек клиента изменения должны немедленно влиять на доступ в лаунчере.
- Система должна автоматически отслеживать дату окончания лицензии:
- По истечении срока доступ к играм блокируется.
- Автоматическое включение доступа при истечении срока не предусмотрено - только ручное вмешательство через админку.
- При статусе «Отключено» игры у клиента не запускаются, независимо от срока лицензии.
3. Сервер лицензий (API)
- Необходимо реализовать простой API-эндпоинт.
- Лаунчер на ПК клиента будет отправлять запрос с идентификатором клиента.
- API должен возвращать ответ в машиночитаемом формате (например, JSON), содержащий:
- Общий статус аккаунта (активен/отключен).
- Список идентификаторов разрешенных для запуска игр.
- Информацию об оставшемся сроке лицензии (опционально).
Критерии приемки
- Админ-панель работает стабильно, изменения применяются мгновенно.
- API надежно отвечает на запросы от лаунчера.
- Реализована автоматическая блокировка доступа по истечении срока оплаты.
- Интерфейс интуитивно понятен и позволяет быстро управлять доступом клиентов.