Set-Cookie-Parser
Set-Cookie Parser
Plak meerregelige Set-Cookie-antwoordheaders om attributen te inspecteren en riskante SameSite / Secure-combinaties te markeren.
Cookie-attribuutkaarten
setCookieParser.attr.maxAgeHint
JSON-voorbeeld
[
{
"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"
]
}
]Als de browser cookies niet accepteert, ligt het vaak niet aan de waarde, maar aan onjuiste Set-Cookie-attributen.
Gerelateerde aanbevelingen
Wat is de Set-Cookie-Parser?
De Set-Cookie-Parser is een debugtool speciaal voor de inhoud van Set-Cookie HTTP-antwoordheaders. Hij verdeelt de tekst niet alleen op puntkomma's, maar helpt ontwikkelaars te beoordelen: is de cookieconfiguratie van de server correct, waarom heeft de browser deze niet geaccepteerd, welke attribuutcombinaties brengen beveiligings- of compatibiliteitsrisico's met zich mee, en is de Set-Cookie geschikt voor cross-site, SSO, iframe, derde-partijcookie- of sessiescenario's.
Anders dan de Cookie-header in verzoeken is Set-Cookie een configuratie-instructie die de server naar de browser stuurt. Hij bevat niet alleen name=value, maar ook attributen zoals SameSite, Secure, HttpOnly, Path, Domain, Expires, Max-Age en Partitioned. Deze velden bepalen direct of de browser de cookie opslaat, wanneer deze verloopt, op welke paden en domeinen deze geldig is en of deze in cross-site-verzoeken kan worden verzonden. Veel problemen zoals verlies van inlogsessie, ontbrekende cookies in verzoeken of storingen in cross-origin-scenario's liggen niet aan de waarde zelf, maar aan de configuratie van de Set-Cookie-attributen.
De waarde van deze pagina zit in het gestructureerd extraheren van deze attributen uit de originele antwoordheader en het uitvoeren van statische controles op basis van de werkelijke browserregels. Bijvoorbeeld: ontbreekt Secure bij SameSite=None, is Partitioned gecombineerd met Secure, heeft het __Host-voorvoegsel een onjuist Domain, is Max-Age ongeldig of gelijk aan 0, ontbreekt Max-Age bij Expires. Browsers tonen deze problemen meestal niet als syntaxisfouten, maar weigeren de cookie stilzwijgend, dus een toolgestuurde controle is essentieel.
Als je alleen wilt weten welke cookies in het huidige verzoek aanwezig zijn, gebruik dan de HTTP Cookie-Parser. Deze pagina is meer geschikt voor het debuggen van antwoordheaders: waarom heeft de browser de cookie niet opgeslagen, zijn er beveiligingsrisico's in de configuratie, is de combinatie van cross-site- en beveiligingsattributen correct.
Toepassingsgevallen
- Snel lokaliseren van configuratieproblemen met SameSite, Secure, HttpOnly, Path of Domain wanneer de browser cookies weigert
- Controleren of SameSite=None correct is gecombineerd met Secure in scenario's voor inloggen bij derden, SSO, iframe-inbedding of cross-site-verzoeken
- Batchcontrole van cookie-antwoorden van API's tijdens beveiligingsaudits op ontbrekend HttpOnly/SameSite of risicovolle attribuutcombinaties
- Controleren of cookies met __Host-/__Secure-voorvoegsel aan de browservoorwaarden voldoen om stille weigering te voorkomen
- Controleren of Partitioned en Secure tegelijkertijd zijn gedeclareerd bij het debuggen van Partitioned Cookies/CHIPS
- Vergelijken van Set-Cookie-antwoordheaders uit ontwikkel-, test- en productieomgevingen om inlogproblemen na omgevingswisselingen op te lossen
Hoe te gebruiken
- Kopieer de inhoud van de Set-Cookie-antwoordheaders (meerregelig ondersteund) uit browser-DevTools, pakketanalysetools of serverlogboeken
- Plak deze in het invoergebied; de tool verwijdert automatisch het voorvoegsel Set-Cookie: en analyseert elke regel
- Bekijk namen, waarden, URL-gedecodeerde waarden, attribuutkaarten en waarschuwingen voor elke cookie
- Kopieer de originele header of bekijk de JSON-voorbeeldweergave om resultaten naar backend te sturen of in issues/testscripts te plakken
Functies
- Onafhankelijke analyse van meerdere Set-Cookie-headers: elke regel wordt weergegeven als een aparte kaart met naam, ruwe waarde, URL-gedecodeerde waarde en attributen
- Automatische controle op 14 veelvoorkomende problemen: dekt SameSite, Secure, HttpOnly, Path, Domain, Max-Age, Expires, __Host-/__Secure-voorvoegsels en Partitioned
- Volledige attribuutontleding: gestructureerde weergave per SameSite, Secure, HttpOnly, Path, Domain, Expires, Max-Age, Partitioned en andere velden
- Leesbare Max-Age-omrekening: seconden worden automatisch omgerekend naar minuten, uren en dagen
- Meerregelige batchinvoer: plak volledige Set-Cookie-antwoordheaders direct uit DevTools of pakketanalysetools
- Kopie van originele header en JSON-voorbeeldweergave: handig voor het doorsturen naar backend of het maken van documenten, issues en testgevallen
- Lokale verwerking zonder upload: gevoelige sessies, tokens en inlogcookies worden in de browser geanalyseerd en verlaten je apparaat niet
Wanneer gebruik ik de Set-Cookie-Parser en wanneer de andere pagina's?
Inzicht in het verschil tussen "wat de server heeft ingesteld" en "wat daadwerkelijk in verzoeken wordt verzonden" is essentieel: verwar deze twee niet.
| Tool | Geschikte invoer | Meest geschikt voor | Kernvoordeel |
|---|---|---|---|
| Set-Cookie-Parser (deze pagina) | Set-Cookie-antwoordheader | Oplossen van niet-geaccepteerde cookies, niet-werkende cross-site cookies en risico's in de beveiligingsconfiguratie | Volledige attribuutontleding met automatische controle op 14 veelvoorkomende configuratiefouten |
| HTTP Cookie-Parser | Cookie-verzoekheader, document.cookie | Controleren welke cookies daadwerkelijk in verzoeken worden verzonden, of waarden URL-gecodeerd zijn en of er dubbele namen zijn | Meer gericht op het ontleden van naam-waardeparen in verzoekheaders en gestandaardiseerde uitvoerOpen HTTP Cookie-Parser |
| Cookie-Parser | Gemengde cookiestrings en gecombineerde Set-Cookie-debug | Wanneer je de herkomst van de gegevens niet precies weet of snel wilt wisselen tussen Cookie- en Set-Cookie-modus op één pagina | Algemeen startpunt voor cookie-debug, ondersteunt ook export in Netscape Cookie File-formaatOpen Cookie-Parser |
Best Practices
Controleer eerst of het probleem zit in het instellen of het verzenden van de cookie
Als de browser de cookie helemaal niet opslaat, begin dan met deze pagina. Als de cookie al is opgeslagen maar in volgende verzoeken ontbreekt, gebruik dan ook de HTTP Cookie-Parser. Set-Cookie en de Cookie-verzoekheader zijn twee verschillende fasen.
Controleer in cross-site-scenario's eerst de combinatie van SameSite=None en Secure
De meest voorkomende fout bij SSO, inloggen bij derden, iframe-inbeddingen en cross-origin-verzoeken is SameSite=None zonder Secure. Los dit probleem eerst op voordat je de serverlogica of browserinstellingen controleert.
Controleer bij __Host-/__Secure-voorvoegsels niet alleen de naam, maar alle voorwaarden
Veel teams denken dat het toevoegen van een __Host- of __Secure-voorvoegsel aan de cookienaam al voldoende is voor beveiliging, maar als Secure, Path=/ of Domain niet correct zijn geconfigureerd, weigert de browser de cookie alsnog.
Bewaar bij het documenteren en reproduceren van issues zowel de originele header als de JSON-versie
De originele header is handig voor afstemming met backend- en operationele teams; de JSON-versie kan in issues, testgevallen en scripts worden geplakt. Beide bewaren is beter dan alleen een screenshot uit DevTools.
Veelgestelde vragen
Wat is het verschil tussen de Set-Cookie-Parser en de Cookie-verzoekheaderparser?
De Set-Cookie-Parser is bedoeld voor antwoordheaders van de server en controleert of de browser de cookie accepteert en of de attributen correct zijn. De Cookie-verzoekheaderparser analyseert verzoeken die door de browser worden verzonden en laat zien welke cookies daadwerkelijk worden meegestuurd. Als je problemen met SameSite, HttpOnly, Secure, Path, Domain, Expires of Max-Age oplost, gebruik dan deze pagina.
HTTP Cookie-ParserWaarom slaat de browser de cookie niet op, ook al heeft hij het antwoord ontvangen?
Dat is precies het probleem dat deze tool het beste oplost. Veelvoorkomende oorzaken zijn SameSite=None zonder Secure, Secure-cookies die op HTTP-pagina's worden ingesteld, schendingen van het __Host-voorvoegsel, Partitioned zonder Secure, onjuiste Path-/Domain-configuratie, ongeldige Max-Age of Max-Age=0 en beperkingen voor derde-partijcookies van de browser.
Welke veelvoorkomende Set-Cookie-risico's controleert de tool?
Deze pagina detecteert automatisch 14 veelvoorkomende problemen: SameSite=None zonder Secure, ongeldige SameSite-waarde, Partitioned zonder Secure, ontbrekend HttpOnly/Path/SameSite, __Host-voorvoegsel zonder Secure/Path=/ of met onjuist Domain, __Secure-voorvoegsel zonder Secure, ongeldige Max-Age, Max-Age=0, Domain met punt aan het begin en Expires zonder Max-Age.
Waarom moet SameSite=None altijd worden gecombineerd met Secure?
Moderne browsers vereisen dat cross-site cookies met SameSite=None ook het Secure-attribuut hebben, anders worden ze geweigerd. Dit probleem komt veel voor bij inloggen bij derden, SSO, iframe-inbeddingen en cross-origin-verzoeken.
Waarom worden cookies met het __Host- of __Secure-voorvoegsel door de browser geweigerd?
__Host- en __Secure- zijn beveiligingsvoorvoegsels met strikte regels. __Host- vereist Secure, Path=/ en geen Domain-instelling; __Secure- vereist ten minste Secure. Als deze regels worden geschonden, negeert de browser de cookie.
Hoe moeten Max-Age en Expires worden geïnterpreteerd?
Max-Age geeft de relatieve geldigheidsduur in seconden aan en heeft meestal voorrang op Expires. Expires is een absoluut tijdstip dat afhankelijk is van de klok van de client. Veel servers stellen alleen Expires in zonder Max-Age, wat kan leiden tot verkeerde interpretaties door tijdzoneverschillen of onjuiste systeemtijd.
Is de tool geschikt voor het oplossen van problemen met cross-site en derde-partijcookies?
Ja. Of het nu gaat om inloggen bij derden, SSO, iframe-inbedding, cross-origin API's of CHIPS (Partitioned Cookie)-scenario's, deze tool helpt je snel te controleren of de combinatie van SameSite, Secure en Partitioned correct is.
Kunnen analyseresultaten worden gekopieerd of geëxporteerd?
Ja. Je kunt de originele Set-Cookie-header met één klik kopiëren of de gestructureerde JSON-voorbeeldweergave bekijken om namen, waarden, attributen en waarschuwingen in issues, documenten, testscripts of debugnotities te plakken.
Worden de sessie- of tokengegevens die ik plak naar een server geüpload?
Nee. De analyse van de Set-Cookie-inhoud, URL-decodering, attribuutontleding en waarschuwingscontrole vinden volledig lokaal in de browser plaats; gevoelige antwoordheaders worden naar geen enkele server verzonden.
Woordenlijst
- Set-Cookie
- HTTP-antwoordheader waarmee de server de browser opdraagt een cookie op te slaan. Een antwoord kan meerdere Set-Cookie-headers bevatten, meestal één per cookie.
- SameSite
- Attribuut dat bepaalt of cookies in cross-site-verzoeken worden verzonden. Veelvoorkomende waarden: Strict, Lax, None; bij None is meestal Secure vereist.
- HttpOnly
- Indien ingesteld, kan JavaScript de cookie niet lezen via document.cookie, wat het risico op sessiediefstal via XSS vermindert.
- Secure
- Indien ingesteld, stuurt de browser de cookie alleen over HTTPS-verbindingen (met uitzondering van localhost), om gevoelige cookies te beschermen tegen blootstelling op niet-versleuteld HTTP.
- Max-Age
- Relatieve geldigheidsduur van de cookie in seconden. Heeft meestal voorrang op Expires en moet expliciet door de server worden ingesteld.
- Expires
- Absoluut verlooptijdstip van de cookie, afhankelijk van de lokale tijd van de client. Bij alleen gebruik is debuggen complexer dan met Max-Age.
- Path
- Beperkt de cookie tot URL-paden met dit voorvoegsel. Als het Path niet overeenkomt, wordt de cookie in volgende verzoeken niet verzonden, ook niet als deze is opgeslagen.
- Domain
- Beperkt de cookie tot een domeinbereik. Indien niet opgegeven, geldt deze alleen voor de huidige host; indien opgegeven, kan deze ook voor subdomeinen gelden.
- Partitioned (CHIPS)
- Gepartitioneerde opslagoplossing voor derde-partijcookies, als alternatief nadat browsers derde-partijcookies steeds meer beperken. Huidige implementaties vereisen meestal Secure.
- __Host- / __Secure-voorvoegsels
- Door browsers ondersteunde beveiligingsvoorvoegsels voor cookienamen met strikte regels. Bij schending weigert de browser de cookie.
Vergelijkingstabel van de drie SameSite-strategieën
Bij het debuggen van cross-site cookies controleer je eerst het gedrag van SameSite en daarna of Secure ontbreekt.
| SameSite-waarde | Cross-site top-level navigatie (GET) | Cross-site subbronnen (img/iframe/script) | Cross-site POST-formulieren | Cross-site XHR/fetch | Secure vereist? |
|---|---|---|---|---|---|
| Strict | Niet verzenden | Niet verzenden | Niet verzenden | Niet verzenden | Nee |
| Lax (standaard) | Verzenden | Niet verzenden | Niet verzenden | Niet verzenden | Nee |
| None | Verzenden | Verzenden | Verzenden | Verzenden | Secure moet zijn ingesteld |
Tabel met veelvoorkomende Set-Cookie-debugproblemen
Wanneer de browser cookies stilzwijgend weigert, controleer dan eerst deze punten: dat is vaak sneller dan de antwoordtekst doorzoeken.
| Symptoom | Waarschijnlijke oorzaak | Controleer eerst |
|---|---|---|
| Browser slaat cookie helemaal niet op | SameSite=None zonder Secure, schendingen van voorvoegsels of ongeldige attribuutcombinatie | Controleer de waarschuwingen en attribuutkaarten op deze pagina |
| Werkt niet in cross-site/iframe-scenario's | Te strenge SameSite, ontbrekend Secure of beperkingen voor derden | Focus op SameSite, Secure, Partitioned |
| Cookie verloopt onmiddellijk na instellen | Max-Age=0, ongeldige Max-Age, onjuiste Expires-datum | Eerst Max-Age, daarna Expires |
| __Host-/__Secure-cookie werkt niet | Voorwaarden Secure, Path=/ of Domain niet voldaan | Controleer of voorvoegselwaarschuwingen worden weergegeven |
| Werkt in ontwikkeling maar niet in productie | Verschillen in HTTPS, Domain, Path, SameSite of antwoordheaders van proxy | Kopieer de originele header en vergelijk de Set-Cookie-antwoorden van verschillende omgevingen |
Privacy & Security
De analyse van de Set-Cookie-antwoordheader, URL-decodering, attribuutontleding en controle op 14 waarschuwingscategorieën vinden volledig lokaal in de browser plaats. Geplakte sessies, tokens en inlogcookies worden naar geen enkele server verzonden.
- Authenticatie Header Generator
- Cache-Control Parser
- Content-Disposition Parser
- CORS Header Generator
- CORS Inspecteur
- CSP Generator
- cURL naar Code Converter
- Globale DNS Propagatie Controle
- DNS-lookup
- Forwarded Header Parser
- Hreflang Tag Generator
- HSTS Analyzer
- HTTP Cookie Parser
- HTTP Headers Checker
- HTTP Request Tester
- HTTP Status Codes Opzoeken
- IP Opzoeken
- IPv4 Converter
- IPv4 Range Expander
- IPv6 Toolbox
- Link Header Parser
- MX Lookup
- Port Checker
- URL Parameter Builder
- Rate Limit Header Parser
- Redirect Checker
- Robots.txt Generator
- Robots.txt Checker
- Security Headers Checker
- Security.txt Generator
- Set-Cookie-Parser
- Site Network Audit
- Sitemap Generator
- Sitemap Inspector
- SSL Certificaat Controle
- Subnet Rekenmachine
- URL Parser
- User-Agent parser
- UTM Builder
- WebSocket Tester
- What Is My IP?
- WHOIS Opzoeken