Estoy usando Fetch API con {credentials:"include"} para las solicitudes que se describen a continuación.
También mi servidor HTTP devuelve Access-Control-Allow-Credentials: true .
Tengo 3 dominios:
🍪 server.example.com/sign-in enviará una key de cookie con Domain=example.com; HttpOnly=true; Path=/ . La key es una cadena codificada con todos los permisos posibles incluidos.
Como descubrí, se puede acceder a la key desde cada subdominio, lo cual es bueno. Entonces, el subdominio de la application también tiene una key .
🍪 Pero application.example.com/test enviará una key de cookie con Domain=application.example.com; HttpOnly=true; Path=/test que es una key con -> permisos limitados <- incluidos.
Entonces, las cookies para la application de subdominio se ven así:
| Nombre | Dominio | Sendero | Sólo Http |
|---|---|---|---|
| llave | .ejemplo.com | / | verdadero |
| llave | .aplicación.ejemplo.com | /prueba | verdadero |
El problema comienza cuando intento solicitar server.example.com desde application.example.com . Se utiliza la primera cookie (comodín). ¿Pero por qué? Estoy en el subdominio de la application y también tengo una cookie más relevante (la segunda).