web-dev-qa-db-ja.com

JavaScriptを使用してCookieセキュアフラグを設定する方法

document.cookie = "tagname = test; secure"を使用してCookieを設定しようとしましたが、これはセキュアフラグを設定しません。設定を間違えていませんか?サーバー応答からのみ設定できますか?また、その使用例を見つけるのに苦労したため、おそらく一般的には使用されないのではないかと思っています。

本当にありがとう!

27

TL:DR

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

HTTPSを使用して安全な属性を設定する必要があります

通常の(または正式な)名前は属性です。フラグは他のものを指すので。

詳細情報

Cookie属性:

セキュア-CookieはHTTPS送信のみで送信されます。

HttpOnly-スクリプトによるCookieへのアクセスを許可しません。 SecureとHttpOnlyの両方を設定できます。

ドメイン-Cookieの送信先ホストを指定します。

パス-スコープを作成し、パスが一致した場合にのみクッキーが送信されます。

有効期限-Cookieの最大有効期間を示します。

詳細および実用的な使用法。チェック Testing_for_cookies_attributes_(OTG-SESS-002)

[〜#〜] updates [〜#〜]次のコンテンツは2016年6月2日に期限切れになります。

Cookieフラグ

Cookieフラグはプレフィックスです。現時点では、それらは RFCドラフトRFC6265 の更新として説明されています

これらのフラグは「secure」属性とともに使用されます。

__Secure-

ダッシュはプレフィックスの一部です。このフラグはブラウザに通知します。Cookieは「https」にのみ含める必要があります。

__Host-

このフラグが設定されたCookieは、「ドメイン」属性を持ってはいけません。それを設定したホストにのみ送信されます。 2)ホストからのすべてのクエストでホストに送信されるため、「/」に設定された「パス」属性が必要です。

44
Jacob

フラグは secure と呼ばれ、securityではないため:

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