Как установить безопасный флаг cookie с помощью javascript

Я попытался установить cookie с помощью document.cookie = "tagname = test; secure" но это не устанавливает безопасный флаг. Я устанавливаю это неправильно? Можете ли вы установить его только из ответа сервера? Мне также интересно, что, поскольку мне было трудно найти пример его использования, возможно, он обычно не используется?

Огромное спасибо!

Ответ 1

TL: DR

document.cookie = "tagname = test;secure";

Вы должны использовать HTTPS для установки защищенного атрибута

Нормальное (или формальное, может быть) имя является атрибутом. Так как флаг относится к другим вещам.

Больше информации

Атрибуты cookie:

Безопасный - Cookie будет отправляться только по протоколу HTTPS.

HttpOnly- Не разрешать скриптам получать доступ к cookie. Вы можете установить как Secure, так и HttpOnly.

Domain- указывает хосты, на которые будет отправляться cookie.

Путь - создайте области, куки будут отправлены, только если путь совпадает.

Истекает - указывает максимальный срок действия файла cookie.

Более подробная информация и практическое использование. Проверьте Testing_for_cookies_attributes_ (OTG-SESS-002)

ОБНОВЛЕНИЕ Срок действия следующего содержимого истекает 2 июня 2016 года.

Флаги печенья

Флаги cookie - это префиксы. На данный момент они описаны в RFC-проекте как обновление RFC6265

.Эти флаги используются с атрибутом "secure".

__Secure-

Тире является частью префикса. Этот флаг сообщает браузеру, что файл cookie должен быть включен только в "https".

__Host-

Файл cookie с этим флагом

  1. не должен иметь атрибут "домен", он будет отправлен только на хост, который его установил.

  2. Должен иметь атрибут 'path', который установлен в '/', потому что он будет отправляться хосту при каждом запросе от хоста.

Ответ 2

потому что флаг называется secure, а не безопасным:

document.cookie = "tagname = test;secure";