Fix: wrong ip in login logs
This commit is contained in:
@@ -133,6 +133,10 @@ def create_app() -> FastAPI:
|
||||
|
||||
response: Response = await call_next(request)
|
||||
|
||||
# Banned requests are already logged by BanCheckMiddleware
|
||||
if getattr(request.state, "banned", False):
|
||||
return response
|
||||
|
||||
client_ip = get_client_ip(request)
|
||||
path = request.url.path
|
||||
method = request.method
|
||||
|
||||
@@ -29,6 +29,7 @@ class BanCheckMiddleware(BaseHTTPMiddleware):
|
||||
get_access_logger().info(
|
||||
f"[BANNED] [{request.method}] {client_ip} - {request.url.path}"
|
||||
)
|
||||
request.state.banned = True
|
||||
transport = request.scope.get("transport")
|
||||
if transport:
|
||||
transport.close()
|
||||
|
||||
@@ -16,7 +16,7 @@ from fastapi import APIRouter, Request, Response, Query, Cookie
|
||||
from fastapi.responses import JSONResponse, PlainTextResponse
|
||||
from pydantic import BaseModel
|
||||
|
||||
from dependencies import get_db
|
||||
from dependencies import get_db, get_client_ip
|
||||
from logger import get_app_logger
|
||||
|
||||
# Server-side session token store (valid tokens for authenticated sessions)
|
||||
@@ -52,7 +52,7 @@ def verify_auth(request: Request) -> bool:
|
||||
|
||||
@router.post("/api/auth")
|
||||
async def authenticate(request: Request, body: AuthRequest):
|
||||
ip = request.client.host
|
||||
ip = get_client_ip(request)
|
||||
|
||||
# Check if IP is currently locked out
|
||||
record = _auth_attempts.get(ip)
|
||||
|
||||
Reference in New Issue
Block a user