# Changelog - История изменений MC Panel Все значимые изменения в проекте документируются в этом файле. Формат основан на [Keep a Changelog](https://keepachangelog.com/ru/1.0.0/), и проект следует [Semantic Versioning](https://semver.org/lang/ru/). --- ## [1.1.0] - 2026-01-15 ### Добавлено ✨ #### Система прав и ролей - **Роль владельца (Owner)** - полный контроль над панелью - **Система прав** - детальное управление возможностями пользователей - **5 ролей**: Owner, Admin, Support, User, Banned - **7 типов прав**: manage_users, manage_roles, manage_servers, manage_tickets, manage_files, delete_users, view_all_resources #### API эндпоинты - `GET /api/users` - Получить список пользователей - `PUT /api/users/{user_id}/role` - Изменить роль пользователя - `PUT /api/users/{user_id}/permissions` - Изменить права пользователя - `POST /api/users/{user_id}/access/servers` - Выдать доступ к серверу - `DELETE /api/users/{user_id}/access/servers/{server_name}` - Забрать доступ к серверу - `DELETE /api/users/{user_id}` - Удалить пользователя - `POST /api/users/{user_id}/ban` - Заблокировать пользователя - `POST /api/users/{user_id}/unban` - Разблокировать пользователя #### Инструменты - **migrate_users.py** - Скрипт миграции пользователей на новую систему - **MIGRATE_USERS.bat** - Bat файл для запуска миграции на Windows - **OWNER_PERMISSIONS.md** - Полная документация системы прав (~500 строк) #### Документация - Документация системы прав и ролей - Примеры использования API на Python, JavaScript, cURL - FAQ по системе прав - Инструкции по миграции ### Изменено 🔄 - Первый зарегистрированный пользователь теперь получает роль `owner` вместо `admin` - Обновлена структура пользователя в `users.json`: - Добавлено поле `permissions` с детальными правами - Добавлено поле `resource_access` для управления доступом к ресурсам - Все эндпоинты управления пользователями теперь проверяют права доступа - Обновлена версия проекта с 1.0.0 до 1.1.0 ### Безопасность 🔒 - Добавлена проверка прав для всех административных эндпоинтов - Логирование всех действий владельца - Защита от удаления владельца - Автоматическое понижение роли при передаче прав владельца --- ## [1.0.0] - 2026-01-15 ### Добавлено ✨ #### Backend (FastAPI) - REST API с 37 эндпоинтами - JWT аутентификация (токены на 7 дней) - OpenID Connect интеграция (ZITADEL) - WebSocket для real-time консоли - Управление Minecraft серверами - Файловый менеджер API - Система тикетов - Роли пользователей (admin, user) - Bcrypt хеширование паролей #### Frontend (React) - 6 тем оформления (modern, dark, light, blue, green, purple) - Цветная консоль (INFO=зелёный, WARN=жёлтый, ERROR=красный) - Файловый менеджер с поиском - Создание файлов и папок - Перемещение файлов (Cut/Paste) - Система уведомлений (4 типа: success, error, warning, info) - Тикеты с real-time обновлениями (каждые 3 секунды) - Статистика серверов (CPU, RAM, диск) - Личный кабинет - Responsive дизайн #### Docker & DevOps - Multi-stage Dockerfile (Node.js + Python) - Docker Compose конфигурация - Non-root пользователь для безопасности - Healthcheck для мониторинга - Volumes для персистентности данных - Nginx reverse proxy с SSL/TLS - Security headers (HSTS, X-Frame-Options, etc.) - Rate limiting для защиты от DDoS - 4 CI/CD пайплайна (Drone): - code-quality - Проверка качества кода - build-and-publish - Сборка и публикация образа - deploy-staging - Деплой на staging - deploy-production - Деплой на production #### Bat файлы (Windows) - START_PANEL.bat - Локальный запуск - START_DOCKER.bat - Запуск в Docker - STOP_DOCKER.bat - Остановка Docker - RESTART_DOCKER.bat - Перезапуск Docker - LOGS_DOCKER.bat - Просмотр логов - UPDATE_DOCKER.bat - Обновление Docker образа - BACKUP_DATA.bat - Создание backup - RESTORE_DATA.bat - Восстановление из backup #### Документация - README.md - Главная навигация (~200 строк) - ДОКУМЕНТАЦИЯ.md - Полное руководство (~500 строк) - API.md - API документация (~300 строк) - DOCKER.md - Docker и CI/CD (~400 строк) - DOCKER_COMMANDS.md - Docker команды (~300 строк) - DOCKER_ГОТОВО.md - Docker summary (~400 строк) - ГОТОВО.md - История разработки (~200 строк) - ПРОЕКТ_ЗАВЕРШЁН.md - Полный обзор (~600 строк) - ФИНАЛЬНЫЙ_СПИСОК.md - Список файлов (~700 строк) - INSTALL_DOCKER.md - Установка Docker (~400 строк) - FAQ.md - Часто задаваемые вопросы (~500 строк) - BAT_FILES.md - Описание bat файлов (~400 строк) - QUICKSTART.md - Быстрый старт (~300 строк) - РАБОТА_ЗАВЕРШЕНА.md - Финальный summary (~200 строк) - CHECKLIST.md - Финальный checklist (~400 строк) #### Другое - MC_Panel_API.postman_collection.json - Postman коллекция (40+ запросов) - .gitignore - Git ignore правила - .dockerignore - Docker ignore правила - .env.example - Шаблон переменных окружения ### Исправлено 🐛 - Ошибка импорта `authlib.integrations.fastapi_client` → `starlette_client` - Проблемы с drag & drop в файловом менеджере (отключено по запросу) - Уведомления теперь показываются для всех действий - Real-time обновления в тикетах работают корректно ### Безопасность 🔒 - JWT токены с истечением через 7 дней - Bcrypt хеширование паролей (cost factor 12) - OpenID Connect поддержка - Проверка прав доступа на всех эндпоинтах - Защита файловой системы от path traversal - Non-root Docker пользователь - Security headers в Nginx - Rate limiting в Nginx - HTTPS обязательный для production --- ## Типы изменений - **Добавлено** ✨ - новая функциональность - **Изменено** 🔄 - изменения в существующей функциональности - **Устарело** ⚠️ - функциональность, которая скоро будет удалена - **Удалено** 🗑️ - удалённая функциональность - **Исправлено** 🐛 - исправление ошибок - **Безопасность** 🔒 - изменения, связанные с безопасностью --- ## Ссылки - [Документация](ДОКУМЕНТАЦИЯ.md) - [API](API.md) - [Docker](DOCKER.md) - [FAQ](FAQ.md) --- **Формат:** [Keep a Changelog](https://keepachangelog.com/ru/1.0.0/) **Версионирование:** [Semantic Versioning](https://semver.org/lang/ru/)