KamoCRM

Un token de estado de OAuth es un registro del lado del servidor, no una mancha del navegador manos atrás

FixEmailService
Se descapó
23 de septiembre de 2026 a las 2:58 UTC
Autor
Kamo
Compromit
78c4a87

/api/email/oauth/callback y **************** son públicos y sin sesiones (el el proveedor redirija el navegador aquí sin sesión de Kamo, así que "state" era el único lugar el La organización podía provenir de la base de autodescripción64 JSON el CALLER construido: "orgullo": 1, "nonce": "...", "provider": "GOOGLE-WORKSPACE". Cualquiera podía hacer a mano nombrando a un diferente org y volver a reproducirlo contra un código de autorización que obtuvieron para los suyos; la "nonce" En su interior se generó pero nunca se almacenó ni se cotejó con nada, por lo que no detuvo nada. El callback de confianza orgId/provider/memberId directamente de ese decodificar y activó el conectado proveedor para cualquier org the estado nombrado. OAuthStateStore ahora vacía un token opaco, inexpediduible en el asunto, manteniendo el org/miembro/provider/ flujo se resuelve sólo en un disco de Redis con un TTL de 10 minutos nunca en la muestra misma. Lee ese registro sin gastarlo (utilizado para elegir el URI de redirección y el flujo antes de un callback se compromete con un manejador); "Consume" lee y lo elimina permanentemente, por lo que una devolución de llamada es un solo uso: un símbolo reproducido o reutilizado se resuelve a la nada, indistinguible de uno que nunca existía. OAuthFlowService y GroupwareOAuthService - que solía construir y decodificar que blob Independientemente, cada uno con su propia copia del mismo mecanismo, ahora tanto la menta como los fichas de canje a través de esta tienda, así que hay exactamente un lugar que decide lo que significa un estado token. OAuthStateStoreTest falla sin la solución (un segundo consumo de la misma ficha todavía devuelve el registrar en lugar de null); OAuthFlowServiceTest, OAuthFlowKindStateTest y GroupwareOAuthServiceTest se actualizan para el nuevo mecanismo - ya no construyen o decodifican un estado blob directamente, desde No queda nada que decodificar.

Todos los cambios

Como lo que ves enviaste?

Todo llega a su espacio de trabajo por sí solo. Comience en el plan gratuito y lea esta página de nuevo en un mes.

Arranzar gratis para siempreVer Precios