Spaces:
Paused
Paused
File size: 739 Bytes
f006f31 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
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"
)
|