- Shipped
- 24 września 2026 00:15 UTC
- Author
- Kamo
- Commit
- b0e08ac
kamo- wewnętrzny przesuwa id sesji * * * z przeglądarki JavaScript: to obecnie siedzi w SessionStorage i jeździ każdym URL WebSocket jako '? * * * = < 128- hex id >', który w pełni zapisuje dziennik dostępu Traefika. Przeglądarka WebSockets zamiast tego będzie nosić krótkotrwały klucz one- time, że kamo- wewnętrzny mennice (POST / api / generate- otk): Redis 'OTK < otk > - > 128- hex * * * id. Obie usługi muszą ją zaakceptować przed przełączeniem się kamo-internal, więc to Najpierw statki. WebSocketAuthInterceptor teraz czyta parametr 'otk' query i rozwiązuje go - Nie. (nowy, obok Istniejąca walidacjaAndConsumeOneTimeKey stosowana dla X- OTK): Punkt końcowy SockJS, więc jedno połączenie przeglądarki może zrobić więcej niż jeden uścisk dłoni jak sonda transportuje, a czasochłonny odczyt złamie zapas - Key 's short TTL ogranicza to zamiast tego. Prewencja jest otk, następnie dziedzictwo * * * query param, a następnie * * * cookie. Otk, który jest obecny, ale nie rozwiązuje jest trudne odrzucenie: nigdy nie spada do * * * lub cookies, które należą do każdej karty odświeżone ostatni i w inny sposób po cichu uwierzytelnić inną sesję. Nic. zmiany w rozdzielczości sesji w przeszłości (kwalifikowalność członków, atrybuty). Otk i rozwiązane id nigdy nie są logowane, pasujące do otaczającego kodu. Testy: KSessionServiceOneTimeKeyTest i WebSocketAuthInterceptorTest rozdzielczość otk i niekonsumpcja, precedens odrzuca- na - nierozwiązany - otk zasada, spuścizna * * * nadal działa, i nie-uznania odrzucenia. Zarówno zasada precedensu i reguła no- delete zostały sprawdzone ręcznie (wracając do starego / buggy kształtu odtwarza czerwony bieg).
