Skip to content

fix(ingest): accept sentry_key query param auth (#327) - #345

Merged
ajianaz merged 4 commits into
developfrom
fix/327-query-param-auth
Oct 7, 2026
Merged

ajianaz merged 4 commits into
developfrom
fix/327-query-param-auth

Conversation

@ajianaz

@ajianaz ajianaz commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

What

Ingest accepts ?sentry_key= as an auth fallback (order: x-sentry-auth, Authorization: Bearer, query). X-Sentry-Auth parsing tolerates whitespace around , and =. A successful envelope now returns {"id":"<event_id>"} instead of an empty body.

Why

Modern Sentry JS SDKs send auth as query params and were rejected with 401. Fixes #327.

Testing

Integration tests: header auth (with/without spaces), query auth plus JSON id, wrong/empty/missing key returns 401, header precedence. Parser unit test for whitespace. cargo test -p trapfalld -p trapfall_ingest and clippy pass. Not tested against a real JS SDK. Cargo/npm Audit failures are pre-existing on develop.

🤖 Generated with Claude Code

ajianaz and others added 4 commits October 7, 2026 14:57
Modern Sentry JS SDKs send auth as ?sentry_key=...&sentry_version=7 instead of
X-Sentry-Auth. Header/Bearer still take precedence; query param is a fallback.
Header parser now tolerates whitespace around separators. Successful ingest
responds with {"id":"<event_id>"}.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Resolves RUSTSEC-2026-0285 (rustls TLS 1.3 handshake) and the devalue,
source-map-js and undici advisories that fail the Security workflow.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Resolve test-only conflict in trapfalld integration tests (keep #329 and #327 tests).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@ajianaz
ajianaz merged commit 579eee6 into develop Oct 7, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Interop: JS SDKs (v10) send auth as query param — ingest only accepts X-Sentry-Auth header (401)

1 participant