Comparer le token d'API à temps constant

This commit is contained in:
Antoine Jacquin
2026-09-18 21:16:23 +02:00
parent de8d84b94b
commit fd5ad283f7

View File

@ -348,8 +348,11 @@ def _require_token(x_lidar_token: str = Header(None)):
Utilisé par la machine de traitement pour n'accepter que la webapp légère
autorisée (qui présente LIDAR_REMOTE_TOKEN) sur le réseau local.
"""
if API_TOKEN and x_lidar_token != API_TOKEN:
raise HTTPException(401, "token d'API manquant ou invalide")
if API_TOKEN:
import hmac
presented = x_lidar_token or ""
if not hmac.compare_digest(presented, API_TOKEN):
raise HTTPException(401, "token d'API manquant ou invalide")
def _ip_in_regen_cidr(ip):