cpu-tts / app /auth.py
grimshaw's picture
Upload current hf-space contents
8986c3d verified
Raw
History Blame Contribute Delete
913 Bytes
from fastapi import Depends, Header
from app.config import Settings, get_settings
from app.errors import OpenAICompatibleError
def require_bearer_auth(
authorization: str | None = Header(default=None),
settings: Settings = Depends(get_settings),
) -> None:
if not settings.require_auth:
return
if not authorization or not authorization.startswith("Bearer "):
raise OpenAICompatibleError(
status_code=401,
message="Missing or invalid Authorization header.",
error_type="invalid_request_error",
code="invalid_api_key",
)
token = authorization.removeprefix("Bearer ").strip()
if token != settings.api_key:
raise OpenAICompatibleError(
status_code=401,
message="Invalid API key provided.",
error_type="invalid_request_error",
code="invalid_api_key",
)