Andrey Antukh
036a2c0d22
♻️ Harden trusted alternate origins after review
...
Replace the OIDC-local build-public-uri helper with the canonical
cf/get-public-uri so every backend link shares one builder, and drop
the test that only covered the duplicate.
Assert the OIDC token-exchange redirect_uri under a trusted origin by
driving the callback with the HTTP client mocked instead of get-info;
the test fails if the exchange hardcodes the canonical base.
Document that removing an origin does not invalidate already-signed
OIDC states (up to four hours) and that MCP OAuth follows the stamped
origin the same way.
Bring MCP OAuth into scope: wrap its routes with wrap-trusted-origin,
stage the stamped origin in the Redis request record at authorize
time, and re-apply it in decision so issuer, resource, the approval
redirect and the code-exchange iss agree on one base. Unlisted
origins and requests without Origin keep the canonical base. Add a
tabulated trusted/untrusted end-to-end test over the real router.
AI-assisted-by: muse-spark-1.3-contributor
2026-11-12 10:12:48 +00:00
..
2026-10-17 21:53:29 +00:00
2026-11-02 12:12:39 +01:00
2026-09-29 23:07:26 +02:00
2026-11-09 10:11:54 +01:00
2026-09-23 12:31:50 +02:00
2026-11-12 10:12:48 +00:00
2026-11-02 12:12:39 +01:00
2026-11-03 15:07:18 +01:00
2026-11-11 13:02:57 +01:00
2026-08-25 11:55:10 +02:00
2026-11-02 15:02:55 +01:00
2026-11-12 09:24:59 +00:00
2026-11-10 23:27:17 +01:00
2026-10-06 07:33:12 +02:00
2026-10-15 13:01:18 +02:00
2026-10-06 07:33:12 +02:00
2026-08-25 11:55:10 +02:00
2026-11-10 14:12:27 +01:00
2026-11-10 23:27:17 +01:00
2026-11-10 23:27:17 +01:00
2026-11-10 23:27:17 +01:00
2026-11-10 23:27:17 +01:00
2026-10-22 15:31:16 +02:00
2026-11-02 15:02:55 +01:00
2026-11-05 23:59:32 +01:00
2026-09-09 17:58:09 +02:00
2026-09-29 09:07:34 +02:00
2026-10-13 14:33:32 +02:00
2026-10-17 16:01:04 +02:00
2026-11-12 09:24:59 +00:00
2026-10-29 10:35:46 +01:00
2026-09-10 20:29:44 +02:00
2026-11-02 15:02:55 +01:00
2026-11-05 23:59:32 +01:00
2026-09-15 19:22:56 +02:00
2026-09-14 14:50:32 +02:00
2026-10-13 14:33:32 +02:00
2026-08-25 11:55:10 +02:00
2026-11-12 09:24:59 +00:00
2026-10-01 13:16:12 +02:00
2026-10-06 07:33:12 +02:00
2026-10-11 18:48:02 +02:00
2026-10-11 18:48:02 +02:00
2026-10-07 11:52:48 +02:00
2026-10-15 19:18:04 +02:00
2026-11-10 13:47:13 +01:00
2026-11-09 10:11:54 +01:00
2026-10-02 11:08:13 +02:00
2026-10-15 19:50:06 +02:00
2026-10-16 12:48:49 +02:00
2026-08-25 11:55:10 +02:00
2026-10-28 18:40:04 +01:00
2026-11-12 10:12:48 +00:00
2026-10-28 18:40:04 +01:00
2026-09-10 20:29:44 +02:00
2026-08-25 11:55:10 +02:00
2026-11-10 15:52:28 +01:00
2026-11-03 12:07:52 +01:00
2026-10-19 22:18:27 +02:00
2026-11-10 23:27:17 +01:00
2026-11-10 23:27:17 +01:00
2026-10-06 07:33:12 +02:00
2026-10-27 09:30:28 +01:00
2026-10-08 11:38:13 +02:00
2026-11-10 23:27:17 +01:00
2026-11-02 12:12:39 +01:00
2026-09-09 17:58:09 +02:00
2026-10-20 15:33:37 +00:00
2026-11-10 23:27:17 +01:00
2026-10-29 10:35:46 +01:00
2026-10-19 23:25:44 +02:00
2026-09-22 14:03:02 +02:00
2026-11-12 09:24:59 +00:00
2026-11-02 12:12:39 +01:00
2026-10-28 18:44:36 +01:00
2026-09-29 23:07:26 +02:00
2026-10-29 10:35:46 +01:00
2026-11-10 15:54:11 +01:00
2026-08-25 11:55:10 +02:00
2026-11-06 14:44:24 +01:00
2026-08-25 11:55:10 +02:00
2026-11-05 17:46:48 +01:00
2026-11-03 13:49:36 +01:00
2026-11-10 23:27:17 +01:00
2026-11-11 13:02:57 +01:00
2026-11-10 18:09:07 +01:00
2026-11-10 23:27:17 +01:00
2026-11-05 23:59:32 +01:00
2026-10-17 16:01:04 +02:00
2026-11-03 13:49:36 +01:00
2026-11-10 18:09:07 +01:00
2026-11-03 13:49:36 +01:00
2026-11-03 13:49:36 +01:00
2026-11-10 15:52:28 +01:00
2026-11-12 09:24:59 +00:00
2026-08-25 11:55:10 +02:00
2026-10-07 14:58:32 +02:00
2026-11-09 10:42:28 +01:00
2026-10-15 13:01:18 +02:00
2026-11-10 23:27:17 +01:00
2026-09-24 12:19:29 +02:00
2026-11-12 09:24:59 +00:00
2026-11-03 13:49:36 +01:00
2026-09-22 14:43:04 +02:00
2026-10-15 13:01:18 +02:00
2026-11-10 23:27:17 +01:00
2026-08-25 11:55:10 +02:00
2026-10-28 10:35:31 +01:00
2026-10-16 15:57:32 +02:00
2026-10-06 07:33:12 +02:00
2026-09-23 15:25:21 +02:00
2026-09-23 15:25:21 +02:00
2026-10-19 22:18:27 +02:00
2026-10-05 17:16:47 +02:00
2026-11-05 13:21:23 +01:00
2026-08-25 11:55:10 +02:00
2026-10-07 11:52:48 +02:00
2026-08-25 11:55:10 +02:00
2026-11-02 15:02:55 +01:00
2026-09-01 12:45:17 +02:00
2026-10-22 15:29:37 +02:00
2026-10-11 18:48:02 +02:00
2026-10-07 11:52:48 +02:00
2026-10-07 11:52:48 +02:00