mineo マイページからログアウトできない( Chrome 80+Win10)
Q&Aとアイデアファームが発端となり、色々と確認してみました。
ログアウトできなくなった
https://king.mineo.jp/question-answer/サービス全般/申込方法 サービス/26262
mineoのマイページでログアウトすると完全にはログアウトされません、早急に事象の確認と注意喚起を!
https://king.mineo.jp/my/a2cbcc55b50869d0/ideas/68652
2020年 2月 4日にリリースされた Chrome 80 から「SameSite = None の場合は Secure の属性が必須」となり、この設定がされていないサードパーティクッキーをブロックするようになりました。
Chrome 79 までは Cookie を発行したサイトとは別のサイトが Cookie の通信(やりとり)を行う事が出来ていたのでサイト間での連携が可能だった(別サイトの Cookie を使用できた)が、Chrome 80 では今までと動作・扱いが変わっておりサイト側が Chrome 80 からの処理方法に対応していない(つまり実装が出来ていない・追いついていない)というケースが出てきました。
その結果「今までは使えていた別のサイトが発行した Cookie がブロック」されて利用できなくなり Chrome の自動更新によってバージョンが 80 に変わると急に動作に支障をきたすという事になってきます。
例えば、ログインしたのにログインできない、ログアウトしたのにログアウトされない、カートに入れた商品が支払い画面では消えているなどの症状です。
この影響によりクロスサイト Cookie を利用している状態と思われる mineo マイページからのログアウト動作が正常に行えないという状況が発生しているのではないか?と考えられます。
※ Chrome デベロッパーツールで mineo マイページにログインした状態で Cookie を見てみると login.eonet.jp と my.mineo.jp、mineo.jp が発行した Cookie を利用している状態になっている事がわかります。
動作については、ここの図解が分かりやすいと思います。
Chrome 80が密かに呼び寄せる地獄 ~ SameSite属性のデフォルト変更を調べてみた
https://qiita.com/ahera/items/0c8276da6b0bed2b580c
Safari 11 に搭載された「ITP( Intelligent Tracking Prevention )」機能という仕組みでサードパーティクッキーが制限され、広告配信がうまくいかなくなるという現象と似ているかもしれませんね。
2020年 3月24日(米国時間)リリースの Safari 13.1、iOS 13.4、iPad OS 13.4 ではトラッキング防止機能の ITP が強化されて「デフォルトでサードパーティクッキーを完全ブロックする」という方向になるそうなので、これらのアップデート後に急に Safari からではログインすら不可能になるというサイトが出てくる可能性があると思えます。
※サードパーティクッキー
クッキーには「ファーストパーティ」と「サードバーティ」があります。
・ファーストパーティクッキー
現在表示中のページと同じサーバー(ドメイン名)のクッキーをファーストパーティクッキーと呼びます。
・サードパーティクッキー
現在閲覧中のサイトとは違うサイト(別のサーバー)のクッキーはサードパーティクッキーと呼びます。
パソコン版 Chrome 80 の設定で「サードバーティの Cookie をブロックする」のオン・オフ設定、SameSite Cookie の設定によって動作に違いがありますが、このような設定にすれば mineo マイページからのログアウト後に「ログイン画面にもどる」で「eoID でログイン」の画面が表示される
ようになります。
(手元のパソコンにて確認した感じでは…ですが、サイト側の修正が行われると、また動作が変わる可能性はあります。)
なお、mineo マイページからログアウトして「ログアウトしました」の画面が表示された状態で一旦 Chrome を終了し、再度起動すればログインしたままの状態にはならず「eoID ログイン」画面が表示されます。
mineo マイページ以外へのアクセスも考慮すると、SameSite flags( chrome://flags/ )の2つの設定は Disabled に変更しておいた方が良いかもしれないですね。
・ケース1
サードバーティの Cookie をブロックする:オフ(初期値)
許可に登録するサイト
登録なし
SameSite flags( chrome://flags/ )初期値(Default)
SameSite by default cookies: Default
Cookies without SameSite must be secure: Default
「サードバーティの Cookie をブロックする:オフ」になっている場合はログアウトできると思います。
手元のパソコンで確認した際にはログアウト後に「ログイン画面にもどる」をクリックすると eoID ログイン画面になり、ログイン済みの mineo マイページが表示されるという現象は発生しませんでした。
・ケース2
サードバーティの Cookie をブロックする:オン
許可に登録するサイト
https://my.mineo.jp のみでもログアウトできる場合がある。
https://login.eonet.jp
https://order.eonet.jp
念のため「3つ登録」しておいた方が良いかと思います。
SameSite flags( chrome://flags/ )初期値(Default)
SameSite by default cookies: Default
Cookies without SameSite must be secure: Default
・ケース3
サードバーティの Cookie をブロックする:オン
許可に登録するサイト
https://my.mineo.jp のみでもログアウトできるようです。
https://login.eonet.jp
https://order.eonet.jp
念のため「3つ登録」しておいた方が良いかと思います。
SameSite flags( chrome://flags/ )で Disabled に変更
SameSite by default cookies: Disabled
Cookies without SameSite must be secure: Disabled
この2つの設定は今までと同じように動作させるための設定だそうです。
※ Chrome のデベロッパーツール(標準装備)で mineo マイページ表示中の Cookie を確認すると、JSESSIONID の Cookie が login.eonet.jp と my.mineo.jp の2つ(サードパーティの Cookie をブロックがオフの場合は my.mineo.jp のみしか無い)になっていたり、SMSESSION が本来は3つあるはずと思われるが不足しているなどが確認できましたので、本来想定されている動作と違っている可能性があるかもしれません。
※「サードバーティの Cookie をブロックする:オフ(初期値)」に設定されている場合、service3.eonet.ne.jp の Cookie をローカルデータベースストレージに保存するという動作が行われているようです( Chrome を再起動して Cookie を確認する際に保存されている事が確認できました)。
この Cookie は何の用途に使っているのかは分かりませんが…。
許可するサイトの設定
(1) 「Cookie とサイトデータ」の設定画面を開く
アドレスバーに
chrome://settings/content/cookies
と入力して Enter キーを押す。
または、設定メニューから開きます。
① アドレスバーの右にある設定メニューをクリック
縦に・・・が並んだところです
② 一覧から「設定」をクリック
③ 左側の「プライバシーとセキュリティ」をクリック
④ 右側に表示された「サイトの設定」をクリック
⑤ 「Cookie とサイトデータ」をクリック
(2) 「許可」するサイトに以下を登録
https://my.mineo.jp
https://login.eonet.jp
https://order.eonet.jp
① 「許可」の右にある「追加」をクリック
② サイト( URL )を入力して「追加」をクリック
③ 必要な分を繰り返す
※ https://serivice3.eonet.ne.jp も登録が必要なのかは不明です(用途不明なので)。
SameSite flags の設定
(1) Flag 設定の画面を表示する
アドレスバーに
chrome://flags
と入力して Enter キーを押す。
(2) SameSite を検索する
(3) 以下の項目の設定を Disabled に変更する
SameSite by default cookies: Disabled
Cookies without SameSite must be secure: Disabled
※サーバー側の対応が出来ていない場合の対処として設定しておく
(4) 画面右下の「Relaunch」をクリックして再起動する
動作確認・検証を行った結果
---------------------------
動作確認環境
ThinkPad X201i
Windows 10 Pro 64bit Ver. 1903
Chrome 80.0.3987.149 64ビット
2020/03/27 ~ 2020/04/02 に確認を行っていますが今後の動作結果は変わるかもしれません。
mineo マイページへのログイン操作を行う前の準備
・Chrome が起動していたら mineo マイページのタブを閉じる
・一度 Chrome を終了してから起動し直す
起動したままだと状態が保持されてしまうのを回避するため
・my.mineo.jp、mineo.jp、xxx.eonet.jp の Cookie 削除
SameSite flags = Default(初期値)の場合
---------------------------
動作検証1
サードバーティの Cookie をブロックする:オン
許可:登録なし
SameSite flags( chrome://flags/ )
SameSite by default cookies: Default
Cookies without SameSite must be secure: Default
(1) mineo マイページにログイン
(2) ログアウトする
(3) ログアウト画面(ログアウトしましたの表示)
(4) ログイン画面へもどるをクリック
(5) ログイン済みの mineo マイページが表示される
→ ログアウトされていない
mineo マイページログイン後の状態で JSESSIONID の Cookie が login.eonet.jp と my.mineo.jp の2つ
NABLARCH_SID という login.eonet.jp /auth の Cookie が存在する
(通常は my.mineo.jp には無いみたいだけど eoID ログイン画面にはある)
SMSESSION の Cookie は .login.eonet.jp .my.mineo.jp の2つ( .order.eonet.jp は無い)
動作検証2
サードバーティの Cookie をブロックする:オン
許可:https://my.mineo.jp
SameSite flags( chrome://flags/ )
SameSite by default cookies: Default
Cookies without SameSite must be secure: Default
(1) mineo マイページにログイン
(2) ログアウトする
(3) ログアウト画面(ログアウトしましたの表示)
(4) ログイン画面へもどるをクリック
(5) ログイン済みの mineo マイページが表示される
→ ログアウトされていない
mineo マイページログイン後の状態で JSESSIONID の Cookie は login.eonet.jp と my.mineo.jp の2つ
NABLARCH_SID という login.eonet.jp /auth の Cookie が存在する
(通常は my.mineo.jp には無いみたいだけど eoID ログイン画面にはある)
SMSESSION の Cookie は .login.eonet.jp .my.mineo.jp の2つ( .order.eonet.jp は無い)
※ 2020/03/30 にはログアウトできない状態でしたが、2020/04/02 に再確認したときは「ログイン画面にもどる」をクリックしたら eoID ログイン画面が表示されるようになってました。
動作検証3
my.mineo.jp、mineo.jp、xxx.eonet.jp の Cookie 削除
サードバーティの Cookie をブロックする:オン
許可:https://my.mineo.jp
https://login.eonet.jp
SameSite flags( chrome://flags/ )
SameSite by default cookies: Default
Cookies without SameSite must be secure: Default
(1) mineo マイページにログイン
(2) ログアウトする
(3) ログアウト画面(ログアウトしましたの表示)
(4) ログイン画面へもどるをクリック
(5) ログイン済みの mineo マイページが表示される
→ ログアウトされていない
mineo マイページログイン後の状態で JSESSIONID の Cookie が my.mineo.jp 1つ
SMSESSION は .my.mineo.jp .login.eonet.jp の2つ( .order.eonet.jp は無い)
ログアウト後にログイン画面へもどるをクリックした後にログイン済みの mineo マイページが表示されたときは JSESSIONID が2つになってる
SMSESSION は1つ( .my.mineo.jp のみ)
動作検証4
my.mineo.jp、mineo.jp、xxx.eonet.jp の Cookie 削除
サードバーティの Cookie をブロックする:オン
許可:https://my.mineo.jp
https://login.eonet.jp
https://order.eonet.jp
SameSite flags( chrome://flags/ )
SameSite by default cookies: Default
Cookies without SameSite must be secure: Default
(1) mineo マイページにログイン
(2) ログアウトする
(3) ログアウト画面(ログアウトしましたの表示)
(4) ログイン画面へもどるをクリック
(5) eoID ログイン画面が表示される。
mineo マイページログイン後の状態で JSESSIONID の Cookie が my.mineo.jp 1つ
SMSESSION は .my.mineo.jp .login.eonet.jp .order.eonet.jp の3つ
SameSite flags = Default → Disabled へ変更(2つ)
---------------------------
動作検証5
my.mineo.jp、mineo.jp、xxx.eonet.jp の Cookie 削除
サードバーティの Cookie をブロックする:オン
許可:登録なし
SameSite flags( chrome://flags/ )
SameSite by default cookies: Disabled
Cookies without SameSite must be secure: Disabled
(1) mineo マイページにログイン
(2) ログアウトする
(3) ログアウト画面(ログアウトしましたの表示)
(4) ログイン画面へもどるをクリック
(5) ログイン済みの mineo マイページが表示される
→ ログアウトされていない
mineo マイページログイン後の状態で JSESSIONID の Cookie は my.mineo.jp login.eonet.jp の2つ
SMSESSION は .my.mineo.jp .login.eonet.jp の2つ( .order.eonet.jp は無い)
動作検証6
my.mineo.jp、mineo.jp、xxx.eonet.jp の Cookie 削除
サードバーティの Cookie をブロックする:オン
許可:https://my.mineo.jp
SameSite flags( chrome://flags/ )
SameSite by default cookies: Disabled
Cookies without SameSite must be secure: Disabled
(1) mineo マイページにログイン
(2) ログアウトする
(3) ログアウト画面(ログアウトしましたの表示)
(4) ログイン画面へもどるをクリック
(5) eoID ログイン画面が表示される
mineo マイページログイン後の状態で JSESSIONID の Cookie は my.mineo.jp login.eonet.jp の2つ
SMSESSION は .my.mineo.jp .login.eonet.jp の2つ( .order.eonet.jp は無い)
動作検証7
my.mineo.jp、mineo.jp、xxx.eonet.jp の Cookie 削除
サードバーティの Cookie をブロックする:オン
許可:https://my.mineo.jp
https://login.eonet.jp
SameSite flags( chrome://flags/ )
SameSite by default cookies: Disabled
Cookies without SameSite must be secure: Disabled
(1) mineo マイページにログイン
(2) ログアウトする
(3) ログアウト画面(ログアウトしましたの表示)
(4) ログイン画面へもどるをクリック
(5) eoID ログイン画面が表示される
mineo マイページログイン後の状態で JSESSIONID の Cookie は my.mineo.jp のみ
SMSESSION は .my.mineo.jp .login.eonet.jp の2つ( .order.eonet.jp は無い)
動作検証8
my.mineo.jp、mineo.jp、xxx.eonet.jp の Cookie 削除
サードバーティの Cookie をブロックする:オン
許可:https://my.mineo.jp
https://login.eonet.jp
https://order.eonet.jp
SameSite flags( chrome://flags/ )
SameSite by default cookies: Disabled
Cookies without SameSite must be secure: Disabled
(1) mineo マイページにログイン
(2) ログアウトする
(3) ログアウト画面(ログアウトしましたの表示)
(4) ログイン画面へもどるをクリック
(5) eoID ログイン画面が表示される。
mineo マイページログイン後の状態で JSESSIONID の Cookie が my.mineo.jp 1つ
SMSESSION は .my.mineo.jp .login.eonet.jp .order.eonet.jp の3つ
SameSite flags = Default → Disabled へ変更(3つ)
---------------------------
動作検証9
my.mineo.jp、mineo.jp、xxx.eonet.jp の Cookie 削除
サードバーティの Cookie をブロックする:オン
許可:登録なし
SameSite flags( chrome://flags/ )
SameSite by default cookies: Disabled
Cookies without SameSite must be secure: Disabled
Enable removing SameSite=None cookies: Disabled
(1) mineo マイページにログイン
(2) ログアウトする
(3) ログアウト画面(ログアウトしましたの表示)
(4) ログイン画面へもどるをクリック
(5) ログイン済みの mineo マイページが表示される
→ ログアウトされていない
SameSite flag を3つ設定すればログアウトできるのでは?と思いましたが、思い通りにはならなかったです…。
mineo マイページログイン後の状態で JSESSIONID の Cookie は my.mineo.jp login.eonet.jp の2つ
SMSESSION は .my.mineo.jp .login.eonet.jp の2つ( .order.eonet.jp が無い)
NABLARCH_SID という login.eonet.jp /auth の Cookie が存在する
試しにログアウト後の「ログアウトしました」画面表示中にデベロッパーツールから JSESSIONID my.mineo.jp と SMSESSION .my.mineo.jp を手動で削除してから「ログイン画面にもどる」をクリックすると eoID ログイン画面が表示された。
そのまま eoID でのログイン、eoID のパスワード入力を行うと、mineo マイページのログインへと進む。
今度は同じ設定のままでログアウトしました画面にて login.eonet.jp の Cookie のみを Chrome の設定から削除してから「ログイン画面にもどる」をクリックしてみとログイン済みの mineo マイページが表示された。
ログアウトする際の my.mineo.jp 関連の Cookie 更新処理がうまくいってない事に起因する現象と思えます。
mineo マイページログイン状態で確認した Cookie の状態
---------------------------
mineo マイページにログイン状態で Chrome のデベロッパーツールから Cookie の状態を確認した画面をいくつか載せておきます。
・条件設定(その1)
サードバーティの Cookie をブロックする:オフ
許可:登録なし
SameSite flag:Default
JSESSIONID:1つ
my.mineo.jp /mvno_cp
SMSESSION:3つ
.order.eonet.jp /
.login.eonet.jp /
.my.mineo.jp /
・条件設定(その2)
サードバーティの Cookie をブロックする:オン
許可:https://my.mineo.jp
SameSite flag:Default
JSESSIONID:2つ
login.eonet.jp /auth
my.mineo.jp /mvno_cp
SMSESSION:2つ
.login.eonet.jp /
.my.mineo.jp /
NABLARCH_SID:1つ
login.eonet.jp /auth
・条件設定(その3)
サードバーティの Cookie をブロックする:オン
許可:https://my.mineo.jp
https://login.eonet.jp
https://order.eonet.jp
SameSite flag:Default
JSESSIONID:1つ
my.mineo.jp /mvno_cp
SMSESSION:3つ
.order.eonet.jp /
.login.eonet.jp /
.my.mineo.jp /
・条件設定(その4)
サードバーティの Cookie をブロックする:オン
許可:https://my.mineo.jp
https://login.eonet.jp
https://order.eonet.jp
SameSite flag:Disabled に変更
JSESSIONID:1つ
my.mineo.jp /mvno_cp
SMSESSION:3つ
.order.eonet.jp /
.login.eonet.jp /
.my.mineo.jp /
条件設定(その3)を元にして SameSite を Disabled にすると違いが出てくるのでは?と思って確認してみましたが、 mineo マイページ閲覧中に表示されている Cookie には特に違いはなさそうに思えますね。
とは言え、どこでどのようなやり取り・サイト遷移が行われているのかまでは詳しく分かりませんので、ひょっとしたらどこかに違いが出るのかも知れません…。
おまけ
デベロッパーツールの Console ログからサイトの遷移を見ると
https://my.mineo.jp/ へアクセスするとページ遷移される
https://login.eonet.jp/auth/Login/mineo(eoID ログイン画面)
https://login.eonet.jp/auth/Login/initPassword(eoID パスワード入力画面)
https://login.eonet.jp/auth/Login/loginMineo
https://my.mineo.jp/mvno_cp/GCC010401GCC010401_Pre_Init.action(mineo マイページ)
https://kopticom.d2.sc.omtrdc.net/b/ss/kopticommineojp/1/H.26.2/ もログに出るんだけど?
ログアウトを行う
https://login.eonet.jp/auth/Logout/mineo?LOGOUT_DISP=0&RETURN_TO=https://my.mineo.jp/entry/GCC010101GCC010101_Next.action
https://my.mineo.jp/entry/GCC010101GCC010101_Next.action
ログイン画面に戻る
https://login.eonet.jp/auth/Login/mineo(eoID ログイン画面)
が確認できます。
おそらく https://login.eonet.jp/auth/Logout/mineo のところでログアウト処理の Cookie 更新・上書きが上手くいかない事が正しくログアウトされない原因になっているんでしょう…。
おまけ2
ログアウト時に一瞬表示されるのですが、数サイト分の Cookie が保存されていると言うのが分かります。
動作確認の際に数サイト分の Cookie を削除してからやりました。
ログイン時はほんの一瞬なので無理でした。
参考サイト
Chrome 80が密かに呼び寄せる地獄 ~ SameSite属性のデフォルト変更を調べてみた
https://qiita.com/ahera/items/0c8276da6b0bed2b580c
ChromeがSameSite=None Secure設定がないサードパーティクッキーをブロックするように
https://www.sakurasaku-labo.jp/blogs/samesite-none
Chrome 80 クッキーのSameSite属性対応のややこしい注意点2つ
https://tenkoma.hatenablog.com/entry/2020/02/09/004736
【一問一答】 Chrome の SameSite Cookie の変更とは? : Cookie への新たなアプローチ
https://digiday.jp/platforms/what-is-chrome-samesite/
いまさら聞けないSameSite CookieとGoogle Chrome 80
https://www.ecbeing.net/contents/detail/235
EC事業者にも関係するSameSite属性!カートに入れたはずの商品がない? ログインが何回も求められる? Chrome 80の仕様変更とその影響・対策(2020年2月3日追記)
https://www.future-shop.jp/magazine/info-samesite
サードパーティクッキーって何だっけ? 今さら聞けないHTTP Cookieのキホン
https://webtan.impress.co.jp/e/2017/10/03/27016
クッキーのサードパーティって何?
https://daiichi-ag.co.jp/content/?p=2071
その他 Safari 関連
Safari、サードパーティクッキーを完全ブロック、Chromeより2年先行
https://news.mynavi.jp/article/20200325-1003521/
アップル、Safari 13.1であらゆる第三者Cookieをブロックへ。クロスサイトトラッキング防止徹底
https://japanese.engadget.com/jp-2020-03-24-safari-13-1-cookie.html
更新履歴
2020/04/02 初回作成
Chromeライクな新Edgeの標準設定が何となく心地エエです
難しくて最後しか私にはようわかりませんでしたw
いつも、パソコンの事をいろいろ、教えて頂き、ありがとうございます。
助かります。🙇♂️🙇♂️。
あとこれも、
Chromium Blog: Temporarily rolling back SameSite Cookie Changes
https://blog.chromium.org/2020/04/temporarily-rolling-back-samesite.html