Flowdeck 7.85.2 — HUB-19 : propagation des rôles du Hub (registre D3(a))
FlowDeck CI / test (push) Failing after 1s
FlowDeck CI / docker (push) Skipped
FlowDeck CI / lint (push) Failing after 12s
FlowDeck CI / test (pull_request) Failing after 2s
FlowDeck CI / docker (pull_request) Skipped
FlowDeck CI / lint (pull_request) Failing after 14s
FlowDeck CI / test (push) Failing after 1s
FlowDeck CI / docker (push) Skipped
FlowDeck CI / lint (push) Failing after 12s
FlowDeck CI / test (pull_request) Failing after 2s
FlowDeck CI / docker (pull_request) Skipped
FlowDeck CI / lint (pull_request) Failing after 14s
This commit is contained in:
@@ -527,6 +527,15 @@ def _require_admin(request: Request, *, write: bool) -> dict:
|
||||
).fetchone()
|
||||
if not row or not row["is_admin"]:
|
||||
raise HTTPException(status_code=403, detail="Admin access required")
|
||||
# HUB-19 : session draco + rôle Hub connu → exiger « administrateur »
|
||||
# dans le registre du Hub (la voie Bearer ci-dessus, contrat d'API
|
||||
# propre, est exemptée).
|
||||
from app.services import hub_roles
|
||||
if not hub_roles.admin_hub_ok(request):
|
||||
raise HTTPException(
|
||||
status_code=403,
|
||||
detail="Niveau « administrateur » requis dans le registre "
|
||||
"des rôles du Hub pour FlowDeck")
|
||||
if write and request.method in ("POST", "PUT", "PATCH", "DELETE"):
|
||||
cookie = request.cookies.get("csrf_token", "")
|
||||
header = request.headers.get("X-CSRF-Token", "")
|
||||
|
||||
Reference in New Issue
Block a user