KamoCRM

Tajne porównania wewnętrzne i kosmetyczne są stałe i zawodzą zamknięcie

FixConversionService
Shipped
23 września 2026 10:12 UTC
Author
Kamo
Commit
e94af78

Transkrypcja Kontroler, RecordingIngestController i RecordingProcessProgerywowane X-Internal-Auth with String.equals (wycieczka czasu w tajemnicy) i niewykonany Do dosłownej "dev-secret-change-in-prod" - oba na Javie Nazwa ważyła adnotacja oraz w k8s/configmap.yaml domyślnie. The ;) SecretRef in deployment.yaml jest „opcjonalne: true”, więc środowisko bez tego tajnego zamontowanego Przepadła przez wartość, która statkuje w tym repo, a zatem na obrazie, a nie odmawiając Połączenia serwisowe, których nie mógł zweryfikować. Teraz: MessageDigest.isEqual dla porównania, a każdy dosłowny domyślny usunięty (Java i ConfigMap) więc niespokojny sekret postanawia wytępić, a każdy z tych kontrolerów odmawia - zadzwoń. Potwierdzono bezpieczne dla produkcji przed usunięciem domyślnych: kubectl pokazuje K8s Secret istnieje z realną wartością w Przestrzeń nazw kamo i deployment.yaml już wyciąga ją za pośrednictwem envFrom/secretRef. Nowe testy : ;) - pokrycie pustej/nie-tajnej odmowy, a w szczególności przypadku To odróżnia stare od nowego zachowania: z sekretem przymusowym pustym, "".Różno" jest prawdą, więc Stary pojedynek ?auth ? null ||| ? sprawdź rozmówcę, który wysłał EMPTY X-Internal-Auth header od razu do logiki biznesowej. Mutacje sprawdzone przeciwko Kontrolery wstępne: 3 z 13 testów (dokładnie trzy przypadki) Idź na czerwono bez tego naprawa.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing