cookieを削除するとログアウトする|範囲を絞って削除する

cookie 削除 ログアウトで調べる人の状況は、ほぼ2通りになる。1つのサイトの表示がおかしいので直そうとして閲覧履歴データを削除したら、開いていたWebアプリ全部からログアウトしてしまったか、これから削除するつもりで、そうなることを避けたいか。どちらの場合も答えは同じで、Chromeには削除する範囲を絞る画面が別に用意されている。ここでは提供元の公開資料で仕組みと手順を確かめたうえで、削除する範囲を絞る方法と、そもそもログアウトが波及しない持ち方まで整理する。

ログアウトするのは副作用ではなく仕様

まず前提を揃える。提供元のヘルプは、すべてのCookieを削除する手順の直前に警告を置いている。Cookieを削除するとユーザー情報を保持しているサイトからログアウトしたり、保存した設定が削除されたりする可能性があり、これはCookieを削除するたびに起こる、という書き方になっている。

つまり不具合ではない。ログイン状態そのものがCookieとして端末に保存されているため、それを削除すれば当然ログインも失われる。この関係を平易に説明した投稿がある。

そのページを見た内容などの履歴があなたのPC内に一旦保存されます。 これがクッキーです。 次にそのページを見たとき、ページ側はそのクッキーに書いてある情報を読むことで様々な処理を行います。 でも、ページ側ではないと処理が困難になるので、クッキーが利用できない状態の場合、正常な表示や動きをしないようになっていることがあります。 これが「ログアウト状態になる」ということでしょう。 出典: detail.chiebukuro.yahoo.co.jp

Cookieには2種類あるとヘルプは整理している。ファーストパーティCookieは、いまアクセスしているサイト、つまりアドレスバーに表示されているサイトが作るもの。サードパーティCookieは他のサイトが作るもので、埋め込まれた画像や広告の提供元が作る。ログイン状態を持っているのは前者になる。広告の追跡が嫌でCookieを削除する人が、同時にログインまで失うのは、この2つをまとめて削除する操作を選んでいるからになる。

すべて削除する操作が何をしているか

まず、多くの人が使っている手順を確認する。右上のその他アイコンから閲覧履歴データを削除を選び、1時間以内や全期間などの期間を選び、Cookieと他のサイトデータを選んで、データを削除を選ぶ形になる。

この画面には期間の指定があるが、絞り込みとしては粗い。期間を1時間以内にしても、その1時間の間にアクセスしたすべてのサイトのCookieが対象になる。仕事で使うWebアプリを6つ開いた状態で実行すれば、6つすべてからログアウトする。サイトを指定する欄はこの画面に無い。

なお、この画面はアドレスバーからも呼び出せる。アドレスバーに閲覧履歴データを削除と入力すると、アクションチップが出て直接開ける、とヘルプは案内している。素早く呼べるぶん、範囲を絞らずに実行してしまう入口にもなる。

同じ画面には他の項目のチェックボックスも並ぶ。閲覧履歴やキャッシュされた画像とファイルは、Cookieとは別の区分になる。表示が崩れているだけならキャッシュの削除で足りることが多く、その場合はCookieのチェックを外せばログインは残る。1つのサイトの表示を直したいだけなら、この画面を開く前に次の節の手順を見たほうがよい。

サイトを1つだけ指定して削除する

範囲を絞る画面は別の場所にある。手順はこうなる。

  1. 右上のその他アイコンから設定を開く
  2. プライバシーとセキュリティを選び、サードパーティCookieを選ぶ
  3. すべてのサイトデータと権限を表示を選ぶ
  4. 右上の欄でサイトの名前を検索する
  5. サイトの右にある削除を選び、削除を選んで確定する

これで対象は1つのサイトだけになる。他のWebアプリのログインは残る。項目名がサードパーティCookieの下にあるため見つけにくいが、ここで扱うのはそのサイトが保存したデータ全体になる。

この画面が使える場面はもう1つある。関連サイトの確認になる。企業は相互に関連するサイトのグループを定義できるとヘルプは説明していて、例として acme-music.example と acme-video.example の間を移動してもログイン状態を維持する設定が挙げられている。同じグループに入っているサイトは、同じ画面でサイトを選び、プルダウンの矢印を選ぶと確認できる。グループを定義している企業の一覧は公開されているとも書かれている。1つのサービスに見えて複数のドメインで動いている道具は、片方だけ削除しても状態が中途半端に残ることがある。

サードパーティCookieを止めるのは別の操作

削除とブロックは別の設定になる。追跡を減らしたいという目的なら、削除を繰り返すよりブロックのほうが筋が通る。

設定のプライバシーとセキュリティからサードパーティCookieを選ぶと、許可するかブロックするかを選べる。ブロックすると、例外リストで許可したサイトを除いて、他のサイトによるサードパーティCookieがすべてブロックされる。ヘルプは、シークレットモードでは既定でサードパーティCookieがブロックされるとも書いている。

ブロックには副作用がある。サードパーティCookieを使う一部のサイトが想定どおりに動作しないことがあるため、特定のサイトだけ許可する例外リストが用意されている。追加のときにドメイン名の前に [.] を付けると、そのドメイン全体が例外になる。ヘルプの例では [.]google.com と指定すると drive.google.com や calendar.google.com が含まれるとされている。

一時的に許可する経路もある。アドレスバーのアイコンから切り替える形で、通常のブラウジングで適用すると、そのサイトは90日間、または設定をオフにするまでサードパーティCookieの使用を許可される。シークレットモードで適用した場合は、そのセッションの間だけ有効になる。

区別をまとめると、いま保存されている状態を無くすのが削除、これから保存させないのがブロックになる。ログアウトが起きるのは前者だけになる。

ここを取り違えたまま運用している例は多い。追跡が気になるので月に1回まとめて削除している、という運用は、目的に対して副作用のほうが大きい形になる。ブロックを既定にしておけば、保存されるサードパーティCookieの量そのものが減るため、定期的な削除の必要も薄くなる。ヘルプは、ファーストパーティCookieを管理したい場合はデバイス上のサイトデータの説明を見るようにと案内しており、ログイン状態に関わる側は別の画面で扱う建て付けになっている。

なお、削除したい理由が「特定のサイトが自分を覚えていること」なら、そのサイトの側でログアウトすれば足りることも多い。サービスが用意しているログアウトの操作は、そのサービスの状態だけを終わらせる。ブラウザの設定を触る前に、まずサービスの画面を見るほうが影響範囲は狭くなる。

すべてのサイトから抜けたいとき

逆の要望もある。共有のパソコンを離れる前に、全部から抜けておきたい場合になる。ヘルプはここで別の手を案内している。すべてのウェブサイトでGoogleアカウントからログアウトするには、Chromeからログアウトする、という一文になる。

Cookieの削除は端末に保存されたデータを対象にする操作で、Chromeからのログアウトはアカウントとの結び付きを解く操作になる。目的が「この端末に痕跡を残さない」であれば後者が近い。ただしヘルプは、Chromeからログアウトすると情報はGoogleアカウントに保存され、デバイスからは削除されると書いている。手元にブックマークのコピーを残したいなら、ログアウトより先に書き出しを済ませる順番になる。

閉じるたびに削除する設定

毎回手で削除している人には、自動化する設定がある。場所は起動時の設定の説明の中に出てくる。設定のプライバシーとセキュリティからサイトの設定に進み、その他のコンテンツの設定にあるデバイス上のサイトデータを開いて、すべてのウィンドウを閉じるときにサイトによりデバイスに保存されたデータを削除するをオンにする形になる。

この設定をオンにすると、Chromeを完全に閉じるたびにログイン状態が失われる。二段階認証を使っているサービスでは、毎朝コードの入力から始まることになる。共有端末では合理的だが、個人のMacで仕事のWebアプリを5つ使っているなら、得るものより手間のほうが大きくなる。

なお、この設定は起動時に前回開いていたページを開く設定と組み合わせて説明されている。前回のページを開き直したいが自動でログインした状態には戻したくない、という要望に応える組み合わせになる。片方だけ変えても意図した動きにならないことがあるため、2つをセットで見るのが確実になる。

削除の影響範囲を窓で分ける

ここまでは、1つのブラウザの中で削除する対象をどう絞るかという話になる。Webアプリを日常的に行き来している読者には、もう1つの軸がある。どのサービスのCookieがどこに保存されているか、という軸になる。

1つのブラウザで8つのサービスを使っていると、Cookieの保存場所は1つに集まる。だから範囲を絞る操作が毎回必要になり、間違えれば全部からログアウトする。保存場所をサービスごとに分けておけば、片方を削除しても他方には届かない。Chromeでプロフィールを分けるのは、この分け方を2つか3つに限って行う方法になる。

Webアプリを1つずつ独立した窓として扱う専用のブラウザは、この分け方を既定にしている。窓ごとにログイン状態を持つため、同じサービスを2つのアカウントで同時に開いたままにでき、片方の状態を削除しても他方は残る。考え方はワークスペースに、付いてくる挙動はできることに整理されている。手元で使っているサービスが対象かどうかは使えるアプリで確かめられる。

同じ用途の道具は複数あり、ログイン状態の分け方は製品ごとに違う。先に広く使われているものとの違いはRamboxとの比較にまとめてあり、費用の条件は料金に載っている。導入前に出る疑問はよくある質問に集めてある。

目的から手順を選ぶ

最後に、目的ごとに選ぶ手順を並べ直す。

目的 使う操作 ログアウトの範囲
1つのサイトの表示を直す すべてのサイトデータと権限を表示から該当サイトを削除 そのサイトだけ
表示崩れだけ直す 閲覧履歴データを削除でキャッシュのみ選ぶ ログアウトしない
追跡を減らす サードパーティCookieをブロックする ログアウトしない
共有端末を離れる Chromeからログアウトする すべてのサイト
毎回まっさらにする 閉じるときにデータを削除する設定をオンにする すべてのサイト

判断の順番としては、まず目的が「直す」なのか「残さない」なのかを分ける。直すのが目的なら、削除する対象はサイト1つで足り、閲覧履歴データを削除の画面を開く必要は無い。残さないのが目的なら、Cookieの削除より先にChromeからのログアウトを検討する。そして、同じサービスを2つのアカウントで使っていて、片方を削除するたびに両方から抜けてしまうのであれば、直す対象は削除の手順ではなく、ログイン状態の置き場所になる。

よくある質問

Cookieを削除すると必ずログアウトしますか?

提供元のヘルプは、Cookieを削除するとユーザー情報を保持しているサイトからログアウトしたり保存した設定が削除される可能性があり、これはCookieを削除するたびに起こると書いています。ログイン状態そのものがCookieとして保存されているため、対象に入れれば失われます。

1つのサイトだけCookieを削除できますか?

できます。設定のプライバシーとセキュリティからサードパーティCookieに進み、すべてのサイトデータと権限を表示を選び、右上の欄でサイト名を検索して、そのサイトの右にある削除を選びます。他のサイトのログイン状態は残ります。

サイトの表示が崩れているだけなら何を削除すればよいですか?

閲覧履歴データを削除の画面で、キャッシュされた画像とファイルだけを選び、Cookieと他のサイトデータのチェックを外します。これならログイン状態は残ります。それでも直らない場合に、該当サイトのみを指定して削除する手順に進みます。

追跡を減らしたいだけなのに、ログアウトしたくありません。何をしますか?

削除ではなくブロックを使います。設定のプライバシーとセキュリティからサードパーティCookieを選び、ブロックする側にします。動かなくなるサイトが出た場合は例外リストに追加でき、ドメイン名の前に [*.] を付けるとそのドメイン全体が例外になります。

記事一覧へ戻る