12 lines
450 B
Python
12 lines
450 B
Python
from __future__ import annotations
|
|
|
|
from fastapi import HTTPException, Request, status
|
|
|
|
|
|
def verify_bearer_token(request: Request) -> None:
|
|
settings = request.app.state.settings
|
|
authorization = request.headers.get("Authorization", "")
|
|
scheme, _, token = authorization.partition(" ")
|
|
|
|
if scheme.lower() != "bearer" or token != settings.token:
|
|
raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Unauthorized") |