Files
base/tools
zeekayandHanzo Dev 782da26c75 Strip the headers that say who pays and what they may do
This list exists so a service can drop client-supplied identity headers before
its own auth re-injects them. Five were missing from it, and they are the five
that matter most:

    X-User-Permissions     an authorization bypass
    X-User-IsGlobalAdmin   an authorization bypass
    X-Billing-Account-Id   the account the request is charged to
    X-User-Owner           the home org
    X-Project-Id           the sub-scope

The gateway strips all five. This copy did not, so any service sitting behind
this middleware and NOT behind the gateway trusted whatever the client sent —
and that is exactly the case this middleware exists for.

The two lists live in modules that do not import each other, which is why they
drifted. A test now pins every name the gateway strips; it fails with
"X-Billing-Account-Id survived as forged-by-the-client" if one goes missing
again. One list in one place is the real fix and is a separate change.

Co-authored-by: Hanzo Dev <[email protected]>
2026-08-01 21:55:24 -07:00
..
2025-02-10 11:58:49 -06:00
2026-03-04 22:31:27 +02:00
2025-02-10 11:58:49 -06:00
2026-04-23 21:25:58 +03:00
2026-04-23 16:57:26 +03:00
2026-03-11 15:02:59 +02:00
2025-02-10 11:58:49 -06:00