map-room / mappingservice /dependencies.py
Calin Rada
init
f006f31 unverified
raw
history blame contribute delete
739 Bytes
import logging.config
from functools import lru_cache
from fastapi import HTTPException, Security, status
from fastapi.security.api_key import APIKeyHeader
from mappingservice import config
logging.config.fileConfig("logging.conf", disable_existing_loggers=False)
logger = logging.getLogger(__name__)
@lru_cache
def get_settings() -> config.Settings:
return config.Settings()
API_KEY = get_settings().api_key.get_secret_value()
api_key_header_auth = APIKeyHeader(name="Api-key", auto_error=True)
mc = {}
def get_api_key(api_key_header: str = Security(api_key_header_auth)):
if api_key_header != API_KEY:
raise HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid API Key"
)