KamoCRM

OAuth è uno stato opaco una volta Redis token; il rinfresco è bloccato e impegnato da solo

FixMediaService
Spegnimento
14 ottobre 2026 alle ore 16:16 UTC
Autore
Kamo
Impegno
618ee73

stato era base64 JSON {orgId, nonce, provider} costruito dal chiamante, il nonce non è mai stato memorizzato o controllato, e il callback senza sessione si fidava del decodificato orgId - chiunque potrebbe collegare il proprio account Zoom o Microsoft ad un altro Org. MeetingOAuthStateStore ora emette un token a 64-hex casuale legato a org, membro e fornitore (10-minuto TTL); il callback lo spende con GETDEL, uno comando atomico, quindi un contraffatto, scaduto, riprodotto o concomitante secondo callback viene rifiutato prima che il fornitore venga chiamato. I lookup redirect-URI. Token aggiornamento non aveva serratura e ha scritto all'interno della transazione del chiamante mentre Zoom ruota il token rinfrescante su ogni uso: due pod rinfrescanti subito sinistra uno che tiene un token revocato. refreshIfNeeded ora prende una serratura Redis per (org, provider) (30 s lease, rilascio controllato dal proprietario), rilegge la riga in una REQUIRES NEW transazione (un cameriere di solito trova la sovvenzione fresca del vincitore e non spende mai il token rinfrescante), e memorizza il risultato attraverso MeetingOAuthTokenWriter (REQUIRES NEW), impegnato prima che la serratura sia liberata.

Tutte le modifiche

Come quello che vedi la spedizione?

Tutto questo arriva nel vostro spazio di lavoro da solo. Iniziare sul piano gratuito e leggere di nuovo questa pagina in un mese.

Inizia gratis per sempreVisualizza il prezzo