KamoCRM

Un jeton de stat OAuth este un record de server-side, nu o bulă browserul mâinile înapoi

FixEmailService
Expediere
23 septembrie 2026 la 02:58 UTC
Autor
Kamo
Comite
78c4a87

/api/email/auth/callback şi *************** sunt publice şi lipsite de şedinţe furnizor redirecționează browser-ul aici, cu nici o sesiune Kamo), așa că organizaţia ar putea veni de la şi a fost auto-descris baza64 JSON CALLER construit: {"orgid": 1, "nonce": ...", "prestator": "GOGLE WORKSPACE"}. Oricine ar putea face manual o denumire un diferite orgii și să-l replay împotriva unui cod de autorizare au obținut pentru propria lor; "nonce" în interiorul a fost generat, dar niciodată stocate sau verificate împotriva nimic, așa că nu a oprit nimic. ă Callback trust orgId/ provider/memberId direct din acea decodare și a activat conexiunea furnizor pentru oricare org statul numit. OauthStateStore acum menteaza un token opac, de necontestat pe Tise, pastrarea org / membru / furnizor / fluxul se rezolvă doar într-un record Redis cu un TTL de 10 minute niciodată în jetonul în sine. Callback se angajează la un handler); de unică folosinţă: un jeton rejucat sau reutilizat nu rezolvă nimic, imposibil de distins de unul care niciodată a existat. OauthFlowService și GroupwareOAuthSource independent, fiecare cu propria copie a aceluiași mecanism prin acest magazin, deci există exact un loc care decide ce înseamnă un simbol de stat. OAuthStateStoreTest nu reușește fără fix (un al doilea consum de același semn încă întoarce înregistrare în loc de nul); OauthFlowServiceTest, OauthFlowKindStateTest și Groupware OAuthServiceTest sunt actualizate pentru noul mecanism Nu mai e nimic de decodat.

Toate modificările

Ca ceea ce vezi de transport maritim?

Toate acestea ajung în spațiul de lucru pe cont propriu. Începeți cu planul gratuit și citiți această pagină din nou într-o lună.

Pornește gratuit pentru totdeaunaVezi prețurile