KamoCRM

Accepter un otk de courte durée sur la poignée de main WebSocket, aux côtés ***

FixMediaService
Expédié
24 septembre 2026 à 00:15 UTC
Auteur
Kamo
Commit
b0e08ac

kamo-internal déplace le *** session id hors du navigateur JavaScript: it se trouve actuellement dans sessionStorage et chevauche chaque URL WebSocket comme `?***=<128-hex id>`, quel est le registre d'accès de Traefik en entier. Navigateur WebSockets portera plutôt une clé unique courte-vie que kamo-interne menthes (POST /api/generate-otk): Redis `OTK<otk>` -> le 128-hex *** id. Les deux services doivent l'accepter avant que kamo-internal bascule, donc ceci Les navires d'abord. WebSocketAuthInterceptor lit maintenant un paramètre de requête `otk` et le résout à travers **************** (nouveau, à côté de consommation existante valideAndConsumeOneTimeKey utilisé pour X-OTK): SockJS endpoint, donc une connexion de navigateur peut faire plus d'une poignée de main comme il sonne transporte, et une lecture consommatrice briserait le recul — le la clé est propre court TTL le limite à la place. La priorité est otk, puis l'aléatoire ***, puis le cookie ***. Un otk qui est présent mais qui ne résout pas est un dur rejet: il ne tombe jamais jusqu'à *** ou le cookie, qui appartient à l'onglet rafraîchi et authentifierait en silence une session différente. Rien les modifications apportées à la résolution des sessions précédentes (admissibilité des membres, attributs). L'otk et l'identifiant résolu ne sont jamais enregistrés, correspondant au code environnant. Tests: KSessionServiceOneTimeKeyTest et couverture WebSocketAuthInterceptorTest otk résolution et non-consommation, le rejet sur non-résolu-otk priorité la règle, l'héritage *** fonctionne toujours, et le rejet sans fondement. Les deux la règle de préséance et la règle de non-suppression ont été contrôlées à la main (rétrograder chacun à la forme ancienne/buggy reproduit un run rouge).

Tous les changements

Comme ce que vous voyez l'expédition?

Commencez avec le plan gratuit et lisez à nouveau cette page dans un mois, puis passez à l’abonnement payant pour bénéficier de toutes les fonctionnalités.

Commencez gratuitement pour toujoursVoir la tarification