Many Chanegs

This commit is contained in:
2023-08-15 13:51:24 +02:00
parent 501e0765d3
commit b2ce0b1828
4 changed files with 35 additions and 5 deletions
+25
View File
@@ -0,0 +1,25 @@
from fastapi.security.api_key import APIKeyHeader
from fastapi import Security, HTTPException, Depends
from starlette.status import HTTP_403_FORBIDDEN
from pydantic_settings import BaseSettings
from functools import lru_cache
api_key_header = APIKeyHeader(name="access_token", auto_error=False)
class Settings(BaseSettings):
API_KEY: str
class Config:
env_file = ".env"
@lru_cache()
def get_settings():
return Settings()
async def get_api_key(settings: Settings = Depends(get_settings), api_key_header: str = Security(api_key_header)):
print(settings)
if api_key_header == settings.API_KEY:
return api_key_header
else:
raise HTTPException(
status_code=HTTP_403_FORBIDDEN, detail="Could not validate API KEY"
)