fix(auth): address code review feedback - sanitize error messages, remove unused import

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-03-10 00:27:07 +00:00
parent 9c26d412d7
commit 5d716ad78f
2 changed files with 5 additions and 4 deletions
+3 -2
View File
@@ -305,7 +305,8 @@ def _normalize_social_userinfo(provider: str, token: dict, raw_userinfo: dict |
Args:
provider: The social provider key (google, microsoft, apple, dropbox).
token: The OAuth token response from the provider.
token: The OAuth token response from the provider. Included for future
provider-specific claim extraction (e.g. ``id_token`` claims).
raw_userinfo: The raw userinfo dict (may be None for providers without standard OIDC userinfo).
Returns:
@@ -415,7 +416,7 @@ async def social_callback(request: Request, provider: str, db: Session = Depends
except Exception as e:
logger.warning("[SECURITY] SOCIAL_LOGIN_FAILURE provider=%s error=%s", provider, type(e).__name__)
return RedirectResponse(
url=f"/login?error=Social+login+failed:+{type(e).__name__}", status_code=status.HTTP_302_FOUND
url="/login?error=Social+login+failed.+Please+try+again.", status_code=status.HTTP_302_FOUND
)
+2 -2
View File
@@ -6,8 +6,6 @@ import pytest
from fastapi import Request, status
from starlette.responses import RedirectResponse
_TEST_SECRET = "test-secret-value" # noqa: S105
@pytest.mark.unit
class TestSocialProviders:
@@ -311,6 +309,8 @@ class TestSocialCallback:
assert isinstance(result, RedirectResponse)
assert "/login?error=Social+login+failed" in result.headers["location"]
# Ensure internal exception details are not exposed to the user
assert "Exception" not in result.headers["location"]
@pytest.mark.unit