Auth transports add credentials after cross-origin redirects
Maintainer antworten meist innerhalb von 1 Tag
Ein zugehöriger Pull Request wurde bereits gemerged.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 25/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- go
- Bereich
- backend-api-design, security
Rechercherichtung
Beginne mit BasicAuthTransport und UnauthenticatedRateLimitedTransport, insbesondere mit ihren RoundTrip-Methoden, und reproduziere das Verhalten mit zwei httptest-Servern wie beschrieben. Fertig ist die Aufgabe, wenn eine Regressionstestabdeckung für beide Transports vorhanden ist und umgeleitete Anfragen an einen anderen Ursprung nicht ihre von den Transports hinzugefügten Autorisierungsheader enthalten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
BasicAuthTransport and UnauthenticatedRateLimitedTransport add credentials in RoundTrip for each outgoing request. When Go's net/http client follows a redirect to a different origin, the redirected request can pass through the same transport and receive those credentials again.
Expected behavior
Credentials added by these transports should only be sent to the original origin. Redirected requests that cross origin should continue without these transport-managed credentials.
Reproduction
This can be reproduced with two httptest servers: one server returns a redirect to a second server, and the second server records whether the redirected request contains the transport-added authorization headers.
Proposed fix
PR #4364 avoids adding these credentials on cross-origin redirect requests and includes regression coverage for both affected transports.
- Vorherrschende Sprache
- Go
- Sterne
- 11.3k
- Forks
- 2.6k
- Ø Merge
- 2 T. 10 Std.
- Gemergte PRs (30 T.)
- 35
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus google/go-github
-
http.Client.Timeout is ignored by redirect-aware requestsEvtl. vergeben @sb123sb123 hat das vor 24 Tagen übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag
-
Add Copilot content exclusion set/get enterprise and org set endpointsEvtl. vergeben @Tens1des hat das vor 38 Tagen übernommen. Offen
google/go-github#4526 · 1 Kommentar · 1 Reaktion · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Add Copilot custom agents enterprise endpointsEvtl. vergeben @Tens1des hat das vor 38 Tagen übernommen. Offen
google/go-github#4524 · 1 Reaktion · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Repository ruleset rule type `code_quality` is not modelledEvtl. vergeben @etifontaine hat das vor 41 Tagen übernommen. Offen
google/go-github#4520 · 1 Kommentar · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Including an enterprise team as a reviewer for an environment results an unmarshal errorEvtl. vergeben @JWilkinsonMB hat das vor 57 Tagen übernommen. Offen
google/go-github#4457 · 1 Reaktion · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in google/go-github
Ähnliche Issues
-
area: watch bug priority: low
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
mariadb-operator/mariadb-operator#1962 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug good first issue
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
eugenioenko/ttt#919 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
QuantumNous/new-api#7839 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug needs-triage service/costoptimizationhub
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
hashicorp/terraform-provider-aws#50507 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag