Skip to content

Commit 3360290

Browse files
committed
fix: add 30s leeway for clock skew, update expired token test
jwt.decode now tolerates 30s clock drift between servers. Expired token test updated: -10s was within leeway, now -60s. 281 tests pass.
1 parent c570d42 commit 3360290

2 files changed

Lines changed: 2 additions & 1 deletion

File tree

backend/services/auth.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ def _verify_local(self, token: str) -> Dict[str, Any]:
5353
self.jwt_secret,
5454
algorithms=["HS256"],
5555
audience="authenticated",
56+
leeway=30,
5657
)
5758

5859
user_id = payload.get("sub")

backend/tests/test_jwt_local_decode.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ def test_bearer_prefix_stripped(self, auth_service):
5151
assert result["user_id"] == "user-456"
5252

5353
def test_expired_token_raises_401(self, auth_service):
54-
token = _make_token({"sub": "user-789", "exp": int(time.time()) - 10})
54+
token = _make_token({"sub": "user-789", "exp": int(time.time()) - 60})
5555

5656
from fastapi import HTTPException
5757
with pytest.raises(HTTPException) as exc:

0 commit comments

Comments
 (0)