私たちはユーザーがサインインとサインアウトできるWebサービスを持っています。 Cookieは、ユーザーがサインインしているかどうかを判断するために使用されます。Cookieを正しく期限切れにする方法は?
サービスでは、それぞれがサブドメインで識別される複数の「サイト」が公開されます。たとえば、次のように
http://customer1.ourservice.com/
http://customer2.ourservice.com/
にサインインするには、2つの方法があります。 「サービス全体」または「サイト固有」のいずれかです。
「サービスワイド」サインインリクエストは特別なサブドメイン(http://globalauth.ourservice.com/
)に送信されます。リクエストでこのような記号次のようにSet-Cookie
ヘッダーにつながる:
Set-Cookie: OUR-COOKIE=<<cookie-value>>;
expires=Wed, 03 May 2017 11:25:58 GMT;
domain=.ourservice.com;
path=/;
httponly
(改行は読みやすくするためにここに追加)
domain=.ourservice.com
設定では、すべてのサブドメインにクッキーが利用できるようになります。
「サイト固有の」サインイン要求がサイト固有のサブドメインに送信されます。彼らは、次のようなSet-Cookie
ヘッダーにつながる:
Set-Cookie: OUR-COOKIE=<<cookie-value>>;
expires=Wed, 03 May 2017 11:23:42 GMT;
path=/;
httponly
・サインアウト要求は常にサイトの特定のサブドメインに送信され、中に「側の広い」記号との「サイト固有の」看板の両方のためにクッキーを削除することになっています。
看板出て、次のようなSet-Cookie
ヘッダー内の要求結果:
Set-Cookie: OUR-COOKIE=;
expires=Mon, 02 May 2016 11:26:54 GMT;
path=/;
httponly,
OUR-COOKIE=;
expires=Mon, 02 May 2016 11:26:54 GMT;
domain=.ourservice.com;
path=/;
httponly
ここでの考え方は、サイト固有およびサービス全体のCookieの両方がクリアされ、有効期限が切れされなければならないということです。
「サービスワイド」サインインが使用されたときに機能しますが、「サイト固有の」サインインが使用されたときは機能しません。
サイト固有のCookieは、単にブラウザから削除されません。
domain
の設定の有無にかかわらず、ブラウザにCookieの期限切れ/削除を正しく指示する方法を教えてください。