import secrets from fastapi import Security, HTTPException from fastapi.security import APIKeyHeader from starlette.status import HTTP_403_FORBIDDEN from logic.databaseNew.Database import SessionLocal def get_database(): db = SessionLocal() try: yield db finally: db.close() API_KEY_HEADER = APIKeyHeader(name='apiKey') async def check_api_key(apiKey: str = Security(API_KEY_HEADER)): from main import API_KEY if not secrets.compare_digest(API_KEY, apiKey): raise HTTPException(status_code=HTTP_403_FORBIDDEN, detail='apiKey invalid')