Capture all repeated `Cookie` and `Set-Cookie` header values
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 52/100
Direzione di ricerca
Inizia esaminando i percorsi esistenti per l’estrazione dei cookie e l’accesso agli header nelle integrazioni OkHttp, Ktor, Apollo 3 e Apollo 4, quindi confronta il modo in cui gli altri SDK gestiscono gli header ripetuti. Traccia la policy condivisa dei cookie e il comportamento in assenza di Data-Collection prima di eseguire i test di integrazione. Il lavoro è completo quando i valori ripetuti di Cookie e Set-Cookie sono coperti senza una gestione non sicura delle virgole, il filtraggio rimane efficace e i valori malformati vengono rifiutati in modo sicuro.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
The OkHttp, Ktor, and Apollo integrations capture only one Cookie or Set-Cookie header value when creating request and response contexts. Their current header accessors select a single value, so additional cookie fields are omitted from Sentry telemetry.
This is valid HTTP behavior. In particular, HTTP/2 allows clients to split the Cookie field into multiple header fields for compression. Responses also commonly contain multiple Set-Cookie fields.
This is follow-up completeness work from #5811 and supports #5666.
Check what other SDKs are doing before implementing.
Proposed solution
Make cookie extraction list-aware across OkHttp, Ktor, Apollo 3, and Apollo 4:
- Combine repeated request
Cookiefields with;before applying the effective cookie policy. - Process each response
Set-Cookiefield independently because each field represents one cookie and its attributes. - Do not comma-join or comma-split
Set-Cookievalues. A validExpiresattribute contains a comma. - Add shared core helpers or integration-specific adapters that apply the effective cookie policy to every value.
- Preserve valid
Set-Cookieattributes and fail closed for malformed input.
Preserve the existing absent-Data-Collection compatibility behavior for each integration.
Acceptance criteria
- OkHttp, Ktor, Apollo 3, and Apollo 4 capture all repeated cookie header values supported by their header APIs.
- Multiple request
Cookiefields are combined with;and filtered as one cookie string. - Multiple response
Set-Cookiefields are filtered independently without comma splitting or joining. - Built-in sensitive-cookie filtering and configured allow-list, deny-list, and off behavior apply to every cookie value.
- Malformed cookie values never bypass filtering.
- Integration tests cover at least two request
Cookiefields and two responseSet-Cookiefields where the underlying header API supports repeated values.
- Lingua principale
- Kotlin
- Stelle
- 1.4k
- Fork
- 478
- Merge medio
- 2g 20h
- PR unite (30g)
- 71
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di getsentry/sentry-java
-
Improvement Java Platform: Android Platform: Java
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
getsentry/sentry-java#6145 · 1 commento · 1 assegnatario ·
-
Bug Java Platform: Android Platform: Java
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
getsentry/sentry-java#6138 · 1 commento ·
-
Feature Java Platform: Java Spans
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
getsentry/sentry-java#5984 · 1 commento ·
-
Android Task Traces
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
getsentry/sentry-java#5376 · 1 commento ·
-
Android Docs Errors
Difficoltà 2/5 1-3 ore Idoneità per principianti 64/100
getsentry/sentry-java#5375 · 1 commento ·
Tutte le issue di getsentry/sentry-java
Issue simili
-
[Bug] 统计页面无法重置token和汇率 Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
AAswordman/Operit#1265 · 3 commenti ·
-
Tambahkan bahasa Indonesia Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
acristescu/OnlineGo#216 ·
-
Remove custom segment colors Apertaenhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
libre-tube/LibreTube#8803 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
status: waiting-for-triage type: bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
spring-projects/spring-security#19781 ·