feat: implement super admin and platform admin roles

Add multi-platform admin authorization system with:
- AdminPlatform junction table for admin-platform assignments
- is_super_admin flag on User model for global admin access
- Platform selection flow for platform admins after login
- JWT token updates to include platform context
- New API endpoints for admin user management (super admin only)
- Auth dependencies for super admin and platform access checks

Includes comprehensive test coverage:
- Unit tests for AdminPlatform model and User admin methods
- Unit tests for AdminPlatformService operations
- Integration tests for admin users API endpoints

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-24 18:44:49 +01:00
parent 7e39bb0564
commit 53e05dd497
18 changed files with 2792 additions and 6 deletions

View File

@@ -8,6 +8,7 @@ from .admin import (
AdminSetting,
PlatformAlert,
)
from .admin_platform import AdminPlatform
from .architecture_scan import (
ArchitectureScan,
ArchitectureViolation,
@@ -83,6 +84,7 @@ __all__ = [
# Admin-specific models
"AdminAuditLog",
"AdminNotification",
"AdminPlatform",
"AdminSetting",
"PlatformAlert",
"AdminSession",