Реализовано три уровня защиты от доступа владельцев тенантов к /admin/:
1. Явные флаги безопасности в CustomUserManager.create_user()
- Добавлены setdefault(is_staff=False, is_superuser=False)
- Устраняет зависимость от неявных дефолтов Django
2. Явные флаги при создании владельцев тенантов (tenants/admin.py)
- Владельцы создаются с is_staff=False, is_superuser=False
- Явная документация намерений в коде
3. Middleware защита на уровне HTTP (TenantAdminAccessMiddleware)
- Блокирует доступ к /admin/ на поддоменах тенантов
- Только is_superuser=True может войти в админку тенанта
- Последний рубеж обороны (defense-in-depth)
Дополнительно:
- Исправлена видимость alert-уведомлений на странице регистрации
(добавлены явные цвета для всех типов alert)
Суперпользователи НЕ затронуты: create_superuser() работает как прежде.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>