diff --git a/app/core/security.py b/app/core/security.py index 4200c8a..b730aaa 100644 --- a/app/core/security.py +++ b/app/core/security.py @@ -46,9 +46,11 @@ def get_current_user(credentials: HTTPAuthorizationCredentials = Depends(securit detail="Invalid access token", headers={"WWW-Authenticate": "Bearer"}, ) - except Exception: + except Exception as e: + import traceback + traceback.print_exc() # Imprime no log do docker para ajudar a debugar raise HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, - detail="Could not validate credentials", + detail=f"Could not validate credentials: {str(e)}", headers={"WWW-Authenticate": "Bearer"}, ) diff --git a/test_jwt.py b/test_jwt.py new file mode 100644 index 0000000..bb01a58 --- /dev/null +++ b/test_jwt.py @@ -0,0 +1,14 @@ +from app.core.config import settings +import jwt +print(repr(settings.JWT_PUBLIC_KEY_PEM)) +try: + public_key = settings.JWT_PUBLIC_KEY_PEM.replace('\\n', '\n') + print("Public key repr:", repr(public_key)) + # We don't have a valid token, but we can see if loading the key fails. + # PyJWT lazy loads the key when verifying signature. + # Let's force it to load the key by importing cryptography + from cryptography.hazmat.primitives.serialization import load_pem_public_key + load_pem_public_key(public_key.encode('utf-8')) + print("Key loaded successfully!") +except Exception as e: + print(f"Exception: {type(e).__name__}: {e}")