11 Commits

Author SHA1 Message Date
YueGuobin
200ccf0dfe
mcp: fingerprint short-lived console tokens for copy-corruption checks
node_console_info now returns token_sha256_prefix (sha256, first 8 hex
chars) and token_ttl_seconds alongside the console WebSocket URL, and
controller WebSocket auth rejections include the sha256 prefix of the
token as received. Comparing the two immediately distinguishes a token
corrupted in transfer from server-side rejection causes (expired,
revoked, bad signature).
2026-08-21 21:41:47 +08:00
YueGuobin
704b5d80c2
auth: split JWT validation errors by failure cause
get_token_data used to raise the same "Could not validate credentials"
for every JWT-level failure (bad signature, expired, malformed), which
made console WebSocket auth failures impossible to tell apart. Return a
distinct detail per cause and log the underlying exception plus the
unverified header alg value on rejection.
2026-08-21 21:41:47 +08:00
grossmj
0219914103
fix: breaking change with dependency FastAPI v0.137.0
https://fastapi.tiangolo.com/release-notes/#specific-breaking-changes
2026-08-11 18:47:02 +02:00
YueGuobin
c8c14af9f4
Add /refresh to allowed public endpoints list in route auth test 2026-06-23 23:19:07 +08:00
YueGuobin
f1078a97e2
test: add /v3/mcp/ to allowed public endpoints 2026-06-05 01:07:20 +08:00
grossmj
ba4e0c945d
Refactor tests and upgrade dev package requirements 2025-01-17 19:12:44 +10:00
grossmj
a792792128
Remove debug message 2024-12-19 17:09:00 +07:00
grossmj
eca502c49c
Do not test authentication on docs endpoints 2024-12-19 17:04:00 +07:00
grossmj
44c066ac68 Fix compute authentication for websocket endpoints 2023-10-22 12:44:39 +10:00
grossmj
6ec97a704f Put user, groups, roles and ACL under /access 2023-09-02 19:10:02 +07:00
grossmj
427bbc40b9 Fix websocket authentication after upgrade to FastAPI 0.97.0 + tests 2023-06-24 14:55:43 +09:30