KamoCRM

Aceitar um otk de curta duração no aperto de mão WebSocket, ao lado de ***

FixMediaService
Enviado
24 de setembro de 2026 às 00:15 UTC
Autor
Kamo
Confirmação
b0e08ac

kamo- internal está a tirar o ID da sessão *** do navegador JavaScript: it atualmente se senta em sessãoArmazenar e montar cada URL WebSocket como `?***=<128-hex id>`, que registros de log de acesso Traefik na íntegra. Navegador WebSockets irá, em vez disso, carregar uma chave única de curta duração que kamo-internal hortelã (POST /api/generate-otk): Redis `OTK<otk>` -> o 128-hex *** id. Ambos os serviços precisam aceitá-lo antes que o kamo-internal mude, então isso Navios primeiro. WebSocketAuthInterceptor agora lê um parâmetro de consulta 'otk' e resolve-o Não, não, não. (novo, ao lado do Validação de consumo existenteAndConsumeOneTimeKey usada para X-OTK): esta é uma Endpoint SockJS, então uma conexão do navegador pode fazer mais de um aperto de mão à medida que sonda o transporte, e uma leitura consumidora quebraria o recuo — o O TTL curto da própria chave o liga. Precedência é otk, em seguida, o legado *** consulta param, em seguida, o cookie ***. Um otk que está presente mas não resolve é uma rejeição dura: nunca cai através de *** ou do cookie, que pertence a qualquer página atualizada por último e, de outro modo, silenciosamente autenticar uma sessão diferente. Nada. alterações na resolução da sessão anterior (elegibilidade do membro, atributos). A otk e id resolvido nunca são registrados, correspondendo ao código circundante. Testes: KSessionServiceOneTimeKeyTest e WebSocketAuthInterceptorTest cover resolução otk e não consumo, a precedência de rejeição- sobre- não-resolvido- otk regra, legado *** ainda funcionando, e rejeição sem credibilidade. Tanto o a regra de precedência e a regra de exclusão foram verificadas manualmente (revertendo cada um para a forma antiga / buggy reproduz uma corrida vermelha).

Todas as alterações

Como o que você vê o transporte?

Comece com o plano gratuito e leia esta página novamente daqui a um mês, para saber mais sobre o que está disponível para você.

Comece grátis para sempreVer preços