init, add/delete/edit vlans and devices

This commit is contained in:
2026-07-31 21:04:41 +05:00
commit eccda2b26d
28 changed files with 1487 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
import secrets
from fastapi import Security
from fastapi.security import APIKeyHeader
from .config import get_settings
from .errors import APIError
api_key_header = APIKeyHeader(name="X-API-Key", auto_error=False)
def require_api_key(api_key: str | None = Security(api_key_header)) -> None:
expected = get_settings().api_key
if not api_key or not secrets.compare_digest(api_key, expected):
raise APIError(status_code=401, detail="Invalid or missing API key")