Какие знаешь флаги Cookies

«Какие знаешь флаги Cookies» — вопрос из категории Безопасность, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Cookies имеют несколько важных флагов, влияющих на их поведение:

  1. Secure – куки передаются только по HTTPS.
    Set-Cookie: session=abc123; Secure

  2. HttpOnly – запрещает доступ к кукам через JavaScript (защита от XSS).
    Set-Cookie: token=xyz456; HttpOnly

  3. SameSite – контролирует отправку куков с cross-site запросами:

    • Strict – куки только для своего сайта
    • Lax – разрешает GET-запросы с переходом (по умолчанию в современных браузерах)
    • None – разрешает cross-site (требует Secure)
  4. Path – ограничивает путь, для которого куки действительны.
    Set-Cookie: user=admin; Path=/admin

  5. Domain – указывает домен, для которого куки доступны (включая поддомены, если указан .example.com).

  6. Expires/Max-Age – время жизни куки (без них – сессионная кука).
    Set-Cookie: lang=en; Max-Age=3600

Пример настройки:

Set-Cookie: auth=token123; Secure; HttpOnly; SameSite=Lax; Max-Age=86400