Analitzador de Set-Cookie
Set-Cookie Parser
Enganxa capçaleres de resposta Set-Cookie de diverses línies per inspeccionar els atributs i assenyalar combinacions SameSite / Secure de risc.
Targetes d'Atributs de Cookie
setCookieParser.attr.maxAgeHint
Vista Prèvia de JSON
[
{
"index": 0,
"raw": "session=abc123; Path=/; HttpOnly; Secure; SameSite=Lax",
"name": "session",
"value": "abc123",
"decodedValue": "abc123",
"attributes": [
{
"key": "path",
"value": "/"
},
{
"key": "httponly",
"value": null
},
{
"key": "secure",
"value": null
},
{
"key": "samesite",
"value": "Lax"
}
],
"attributeMap": {
"path": "/",
"httponly": true,
"secure": true,
"samesite": "Lax"
},
"warnings": []
},
{
"index": 1,
"raw": "preview=1; Max-Age=600; SameSite=None; Secure",
"name": "preview",
"value": "1",
"decodedValue": "1",
"attributes": [
{
"key": "max-age",
"value": "600"
},
{
"key": "samesite",
"value": "None"
},
{
"key": "secure",
"value": null
}
],
"attributeMap": {
"max-age": "600",
"samesite": "None",
"secure": true
},
"warnings": [
"warn.missingHttpOnly",
"warn.missingPath"
]
}
]Per què el navegador no accepta Cookies, sovint no és per un valor incorrecte, sinó per atributs Set-Cookie incorrectes.
Relacionats
Què és l'Analitzador de Set-Cookie?
L'Analitzador de Set-Cookie és una eina de depuració dedicada específicament al contingut de `Set-Cookie` en les capçaleres de resposta HTTP. El seu objectiu no és simplement separar una línia de text per punt i coma, sinó ajudar els desenvolupadors a jutjar: si la configuració d'aquesta Cookie del servidor és correcta, per què el navegador no l'ha acceptada, quines combinacions d'atributs presenten riscos de seguretat o compatibilitat, i si l'actual Set-Cookie és adequada per a escenaris cross-site, SSO, iframe, Cookies de tercers o sessions.
A diferència de la Cookie de la capçalera de sol·licitud, Set-Cookie és la "instrucció de configuració que el servidor envia al navegador". No només conté `name=value`, sinó que també porta atributs com SameSite, Secure, HttpOnly, Path, Domain, Expires, Max-Age, Partitioned, etc. Aquests camps determinen directament si el navegador l'escriurà, quan expirarà, en quins camins i dominis tindrà efecte, i si es podrà enviar en sol·licituds cross-site. Per tant, la causa arrel de molts problemes com "pèrdua de sessió", "el navegador no envia la Cookie", "no funciona en escenaris cross-domain" no és en el valor en si, sinó en la configuració dels atributs de Set-Cookie.
El valor de la pàgina actual rau a extreure estructuradament aquests atributs de la capçalera de resposta original i realitzar comprovacions estàtiques combinant les regles reals del navegador. Per exemple, si SameSite=None manca de Secure, si Partitioned va acompanyat de Secure, si el prefix __Host- estableix Domain incorrectament, si Max-Age no és vàlid o és igual a 0, si Expires manca de Max-Age, etc. El navegador normalment no mostra aquests problemes directament com errors de sintaxi, sinó que els rebutja silenciosament o es manifesten com "simplement no funciona", per tant la comprovació mitjançant eines és molt important.
Si només voleu saber quines Cookies s'envien actualment en la sol·licitud, no us heu de quedar en aquesta pàgina, sinó que hauríeu de consultar l'«Analitzador HTTP Cookie», que és més adequat per desglossar capçaleres de sol·licitud. La pàgina actual és més adequada per a escenaris de resolució de problemes de capçaleres de resposta com "per què el navegador no l'ha escrita", "aquesta configuració de Cookie del servidor té riscos ocults", "la combinació d'atributs cross-site i de seguretat és raonable".
Casos d'ús
- Quan el navegador rebutja escriure una Cookie, localitzar ràpidament si el problema és en SameSite, Secure, HttpOnly o en la configuració de Path / Domain
- En escenaris d'inici de sessió de tercers, SSO, incrustació d'iframe o sol·licituds cross-site, comprovar si SameSite=None va correctament acompanyat de Secure
- Durant auditories de seguretat, comprovar massivament si les Cookies retornades per les interfícies manquen d'HttpOnly, de SameSite o presenten combinacions d'atributs d'alt risc
- Verificar si les Cookies amb prefixos __Host- / __Secure- compleixen les restriccions fortes del navegador, evitant que siguin descartades silenciosament
- Quan depureu esquemes de partició de tercers Partitioned Cookie / CHIPS, confirmar si Partitioned i Secure es declaren alhora
- Comparar diferències en les capçaleres de resposta Set-Cookie entre entorns de desenvolupament, prova i producció, resolent anomalies de sessió després de canvis d'entorn
Com usar-ho
- Copieu el contingut de les capçaleres de resposta Set-Cookie (admet multilínia) des de DevTools del navegador, eines de captura de paquets o registres del servidor
- Enganxeu-lo a l'àrea d'entrada, l'eina eliminarà automàticament el prefix `Set-Cookie:` i analitzarà línia per línia
- Visualitzeu el nom, valor, valor descodificat URL, targetes d'atributs i etiquetes d'alerta de cada Cookie
- Copieu la capçalera original o visualitzeu la previsualització JSON, per enviar els resultats al backend, enganxar-los en Issue o escriure'ls en scripts de prova
Característiques
- Anàlisi independent de múltiples Set-Cookie: cada línia es mostra en una targeta independent, visualitzant nom, valor original, valor descodificat URL i atributs per a cada una
- Comprovació automàtica de 14 problemes habituals: cobreix riscos freqüents com SameSite, Secure, HttpOnly, Path, Domain, Max-Age, Expires, prefixos __Host- / __Secure- i Partitioned
- Desglossament complet d'atributs: visualització estructurada per camps com SameSite, Secure, HttpOnly, Path, Domain, Expires, Max-Age, Partitioned
- Conversió Max-Age llegible per humans: els segons es converteixen automàticament a minuts, hores i dies, reduint el càlcul manual
- Entrada massiva multilínia: podeu enganxar directament el segment complet de capçaleres de resposta Set-Cookie copiat de DevTools o eines de captura de paquets
- Còpia de capçalera original i previsualització JSON: convenient per reenviar al backend, i també per escriure documents, Issue, scripts i casos de prova
- Processament local sense càrrega: Session, Token i Cookies de sessió sensibles s'analitzen dins del navegador, sense sortir de l'equip
Quan utilitzar l'Analitzador de Set-Cookie i quan utilitzar les altres dues pàgines?
Veure clar "què ha configurat el servidor" i "què s'ha enviat realment en la sol·licitud" són dues coses diferents, no les confongueu.
| Eina | Entrada adequada | Millor per a | Avantatge principal |
|---|---|---|---|
| Analitzador de Set-Cookie (pàgina actual) | Capçalera de resposta Set-Cookie | Resoldre per què el navegador no accepta Cookies, per què no funciona cross-site, per què hi ha riscos en la configuració d'atributs de seguretat | Desglossament complet d'atributs i comprovació automàtica de 14 configuracions freqüents |
| Analitzador HTTP Cookie | Capçalera de sol·licitud Cookie, document.cookie | Confirmar quines Cookies s'han enviat realment en la sol·licitud, si els valors estan codificats per URL, si hi ha noms duplicats | Més centrat en el desglossament de parells nom-valor de capçaleres de sol·licitud i sortida estandarditzadaObrir Analitzador HTTP Cookie |
| Analitzador de Cookie | Escenaris de resolució mixta de cadenes Cookie i Set-Cookie | Quan encara no esteu segurs de l'origen de les dades, o voleu canviar ràpidament entre els modes Cookie / Set-Cookie en una sola pàgina | Més com una entrada general de depuració de Cookie, i admet l'exportació de Netscape Cookie FileObrir Analitzador de Cookie |
Best Practices
Primer determineu si el problema és en "l'establiment fallit" o en "no s'ha enviat en la sol·licitud"
Si el navegador no ha escrit la Cookie en absolut, consulteu primer la pàgina actual; si el navegador l'ha escrita, però no s'ha enviat en sol·licituds posteriors, haureu de consultar també l'Analitzador HTTP Cookie. Set-Cookie i la capçalera de sol·licitud Cookie són dues fases diferents.
En escenaris cross-site, reviseu primer la combinació de SameSite=None i Secure
El problema més comú en SSO, inici de sessió de tercers, incrustació d'iframe i sol·licituds cross-domain és SameSite=None sense Secure. Resoleu primer aquest grup de problemes, després reviseu la lògica del servidor i les polítiques del navegador.
Amb els prefixos __Host- / __Secure-, no només mireu el nom, comproveu que les restriccions siguin completes
Molts equips pensen que afegint `__Host-` o `__Secure-` al nom de la Cookie ja és més segur, però si no es compleixen les condicions associades com Secure, Path=/ o Domain, el navegador encara rebutjarà escriure-la.
Quan escriviu documents i reproduïu Issue, conserveu preferentment tant la capçalera original com el JSON
La capçalera original és adequada per verificar els valors retornats reals amb backend i operacions; el JSON és adequat per enganxar en Issue, casos de prova i scripts per processar posteriorment. Conservar tots dos és millor que només capturar una imatge de DevTools per a la reproducció i col·laboració.
Preguntes freqients
Quina diferència hi ha entre l'analitzador de Set-Cookie i l'analitzador de capçaleres Cookie?
L'analitzador de Set-Cookie s'adreça a les capçaleres de resposta del servidor, centrant-se en si el navegador acceptarà aquesta Cookie i si els atributs tenen problemes; l'analitzador de capçaleres Cookie s'adreça a les sol·licituds enviades pel navegador, centrant-se en quines Cookies s'han enviat en aquesta sol·licitud. Si esteu resolent problemes de configuració d'atributs com SameSite, HttpOnly, Secure, Path, Domain, Expires, Max-Age, hauríeu de utilitzar la pàgina actual preferentment.
Analitzador HTTP CookiePer què el navegador no escriu la Cookie tot i haver rebut la resposta?
Això és precisament el problema que l'eina actual resol millor. Les causes habituals inclouen SameSite=None sense Secure, Cookies Secure que s'intenten establir en pàgines HTTP, incompliment del prefix __Host-, Partitioned sense Secure, configuració de Path o Domain no raonable, Max-Age no vàlid o directament 0, i restriccions de polítiques de Cookies de tercers del navegador.
Quins riscos habituals de Set-Cookie comprova l'eina?
La pàgina actual detecta automàticament 14 tipus de problemes freqüents, incloent SameSite=None sense Secure, valor SameSite no vàlid, Partitioned sense Secure, manca d'HttpOnly, manca de Path, manca de SameSite, prefix __Host- sense Secure, Path no és /, o Domain mal configurat, prefix __Secure- sense Secure, Max-Age no vàlid, Max-Age=0, Domain que comença per punt, i Expires sense Max-Age, entre d'altres.
Per què SameSite=None ha d'anar acompanyat obligatòriament de Secure?
Els navegadors moderns requereixen que les Cookies que es poden enviar entre llocs, si declaren `SameSite=None`, hagin de portar `Secure` alhora, altrament el navegador normalment rebutjarà escriure-les directament. Aquest tipus de problema és molt comú en l'inici de sessió de tercers, SSO, incrustació d'iframe i depuració de sol·licituds cross-origin.
Per què els navegadors rebutgen les Cookies amb prefixos __Host- i __Secure-?
`__Host-` i `__Secure-` són prefixos de seguretat amb restriccions fortes. `__Host-` requereix obligatòriament Secure, Path=/ i no pot establir Domain; `__Secure-` requereix com a mínim Secure. Si es violen aquestes regles, el navegador ignorarà directament aquesta Cookie.
Com s'han d'interpretar Max-Age i Expires?
Max-Age és un nombre de segons relatius, normalment amb prioritat més alta que Expires; Expires és un punt de temps absolut, afectat pel rellotge del client. Molts costats de servidor només escriuen Expires sense Max-Age; tot i que funciona, durant la depuració és més fàcil provocar errors de judici per diferències de zona horària o hora del sistema.
Aquesta eina és adequada per resoldre problemes de Cookies cross-site i Cookies de tercers?
Sí. Tant si es tracta d'inici de sessió de tercers, SSO, incrustació d'iframe, interfícies cross-domain o escenaris CHIPS (Partitioned Cookie), aquesta eina us ajuda a veure ràpidament si la combinació de SameSite, Secure i Partitioned és raonable.
Els resultats de l'anàlisi admeten còpia o exportació?
Sí. Podeu copiar amb un sol clic la capçalera Set-Cookie original, o veure la previsualització JSON estructurada, i enganxar el nom, valor, atributs i resultats d'alerta de cada Cookie en Issue, documents, scripts de prova o registres de depuració conjunta.
S'enviaran al servidor les Session i Token que copieu?
No. L'anàlisi del contingut de Set-Cookie, la descodificació URL, el desglossament d'atributs i la comprovació d'alertes es fan tots localment al navegador, i les capçaleres de resposta sensibles no s'enviaran a cap servidor.
Glossari
- Set-Cookie
- Capçalera de resposta HTTP mitjançant la qual el servidor indica al navegador que emmagatzemi una Cookie. Una resposta pot contenir múltiples Set-Cookie, cadascuna corresponent normalment a una Cookie.
- SameSite
- Atribut que controla si les Cookies s'enviaran en sol·licituds cross-site. Els valors habituals són Strict, Lax, None; d'aquests, None normalment requereix establir Secure alhora.
- HttpOnly
- Quan s'estableix, JavaScript del frontend no pot llegir aquesta Cookie mitjançant document.cookie, utilitzat principalment per reduir el risc de robatori de sessions per XSS.
- Secure
- Quan s'estableix, el navegador només enviarà aquesta Cookie en connexions HTTPS (o el cas especial de localhost), evitant que Cookies sensibles s'exposin en HTTP en text clar.
- Max-Age
- Temps de vida relatiu de la Cookie, en segons. Normalment té prioritat més alta que Expires, es recomana establir-lo explícitament al costat del servidor.
- Expires
- Punt de temps d'expiració absolut de la Cookie, depèn de l'hora local del client. Quan s'utilitza sol, el cost de depuració sol ser més alt que amb Max-Age.
- Path
- Prefix de camí URL que limita on la Cookie té efecte. Si Path no coincideix, fins i tot si la Cookie s'ha escrit, no s'enviarà en sol·licituds posteriors.
- Domain
- Àmbit de domini que limita on la Cookie té efecte. Si no s'estableix, normalment només es limita a l'amfitrió actual; si s'estableix, pot afectar subdominis.
- Partitioned (CHIPS)
- Esquema d'emmagatzematge particionat de Cookies de tercers, utilitzat sovint com a alternativa després que els navegadors redueixin gradualment les Cookies de tercers. La implementació actual normalment requereix anar acompanyada de Secure.
- Prefixos __Host- / __Secure-
- Prefixos de nomenclatura de Cookies d'alta seguretat suportats pels navegadors, amb regles de restricció fortes. Quan es violen les regles, el navegador rebutjarà rebre la Cookie corresponent.
Taula de comparació ràpida de les tres estratègies SameSite
Quan resoleu problemes de Cookies cross-site, reviseu primer els límits de comportament de SameSite, i després comproveu si Secure falta.
| Valor SameSite | Navegació de nivell superior cross-site (GET) | Subrecursos cross-site (img/iframe/script) | Formulari POST cross-site | XHR/fetch cross-site | Requereix Secure obligatòriament |
|---|---|---|---|---|---|
| Strict | No s'envia | No s'envia | No s'envia | No s'envia | No |
| Lax (per defecte) | S'envia | No s'envia | No s'envia | No s'envia | No |
| None | S'envia | S'envia | S'envia | S'envia | Cal establir Secure obligatòriament |
Taula de problemes freqüents en depuració Set-Cookie
Quan el navegador rebutja silenciosament les Cookies, reviseu primer les direccions següents, normalment és més ràpid que fixar-vos en el cos de la resposta.
| Símptoma | Causa probable | Comprovació prioritària |
|---|---|---|
| El navegador no escriu la Cookie en absolut | SameSite=None sense Secure, prefixe incomplert o combinació d'atributs no vàlida | Reviseu primer les etiquetes d'alerta i les targetes d'atributs de la pàgina actual |
| No funciona en escenaris cross-site / iframe | SameSite massa estricte, Secure absent o restriccions de polítiques de tercers | Centreu-vos en SameSite, Secure, Partitioned |
| La Cookie expira immediatament després d'escriure's | Max-Age=0, Max-Age il·legal, problemes amb el temps Expires | Reviseu primer Max-Age, després Expires |
| Cookie __Host- / __Secure- no funciona | No es compleixen les restriccions de Secure, Path=/ o Domain | Verifiqueu si les alertes de prefix coincideixen |
| Funciona en entorn de desenvolupament, però no en producció | Diferències en HTTPS, Domain, Path, SameSite o capçaleres de resposta del proxy | Copieu la capçalera original i compareu les respostes Set-Cookie entre diferents entorns |
Privacy & Security
L'anàlisi de capçaleres de resposta Set-Cookie, la descodificació URL, el desglossament d'atributs i la comprovació de 14 tipus d'alertes es fan tots localment al navegador. Les Session, Token i Cookies de sessió enganxades no s'enviaran a cap servidor.
- Generador de Capçalera d'Autenticació
- Analitzador de Cache-Control
- Analitzador de Content-Disposition
- Generador de Capçaleres CORS
- Inspeccionador CORS
- Constructor de Polítiques CSP
- Convertidor cURL a codi
- Comprovació de Propagació DNS Global
- Consulta DNS
- Analitzador de Capçalera Forwarded
- Generador d'Etiquetes Hreflang
- Analitzador HSTS
- Analitzador de galetes HTTP
- Verificador de Capçaleres HTTP
- Prover de Sol·licituds HTTP
- Consulta de codis d'estat HTTP
- Cerca d'IP
- Convertidor IPv4
- Expansor de Rang IPv4
- Caixa d'eines IPv6
- Analitzador de Capçalera Link
- Consulta MX
- Verificador de Ports
- Generador de Paràmetres URL
- Analitzador de Capçalera de Límit de Freqüència
- Comprovador de cadena de reorientació
- Generador de Robots.txt
- Inspector de Robots.txt
- Verificador de Capçaleres de Seguretat
- Generador de Security.txt
- Analitzador de Set-Cookie
- Auditoria de Xarxa del Lloc
- Generador de Sitemap
- Inspector de Sitemap
- Verificador de Certificats SSL
- Calculadora de Subxarxes
- Analitzador d'URL
- Analitzador User-Agent
- Generador d'Enllaços UTM
- Prover de WebSocket
- What Is My IP?
- Consulta WHOIS