web-dev-qa-db-ja.com

ユーザーがCookieを無効にしたいのはなぜですか?

新しいWebアプリケーションの作成を開始しました。ドキュメントには、ユーザーがCookieを無効にしている状況に備える必要があると書かれています。この状態を読んだのは今回が初めてではありません。ユーザーがブラウザでCookieを無効にしたい理由を誰かが説明してもらえますか?

22
Krystian

Cookieは歴史的に、セキュリティとプライバシーに関する数多くの懸念の元でした。

たとえば、トラッカーCookieを使用して、アクセスしたWebサイトとそのWebサイトで行ったアクティビティを識別できます。

  1. サイトAには、トラッカーサービスを指す隠しiframeが含まれています。
  2. トラッカーサービスは、ユーザーを識別するCookieを発行し、アクセスを記録します。
  3. サイトBには同じ非表示iframeが含まれています。
  4. トラッカーサービスはCookieを認識し、その訪問もログに記録します。
  5. サイトAとサイトBは、トラッカーに支払い、ユーザーがアクセスした他のサイトに関する情報を取得します。

これは1つのアプリケーションにすぎません。トラッカーCookieを使用する方法は他にもあります。そのうちのいくつかは、IDの盗難など、あらゆる種類の厄介な攻撃を許可します。

もう1つの問題はcookieの盗用です。これは、安全でない(つまり、HTTPS以外の)セッションをハイジャックするために使用できます。エクスプロイト(XSSなど)を使用すると、ページが管理して別のサイトのCookieを投稿し、攻撃者がセッションIDを盗む可能性があります。 Cookieをオフにすると、これを防ぐことができます。

これらの問題により、ユーザーは多くの場合、プライバシーとセキュリティを強化するために、特定のサイトでCookieを無効にするか、Cookieをブロックします。

27
Polynomial

トラッキングCookieを使用すると、広告主はさまざまなWebサイト全体、さらにはIPアドレス(ラップトップユーザーなど)全体でユーザーを追跡できます。これは永遠に続いています(文字通りGoogle Adwordsのような広告ネットワークの始まり以来)。しかし最近メディアはそれらのCookieに対して一般の人々を扇動し、プライバシー違反の根本的な原因としてそれらを非難しています。 EUはオプトインなしで不要なCookieを禁止することになっている何かを可決しました。皮肉なことに、オランダ政府のウェブサイト(ここでは数か月前に法律が施行された)も法律に従っていない。

これらのCookieは、実際には、部分的にはプライバシーの信頼の原因です。追跡が簡単になりますが、あるユーザーを別のユーザーに知らせる 他にもたくさんの方法 があります。また、この種のターゲットを絞った広告をブロックする理由はほとんどなく、それは両方の方法を削減しますが、それは別の主題であり、熱い議論です。

Cookieがないと、ユーザーをログイン状態に保つことができません。 Cookieが無効になっている場合(「ログインできない可能性があります。ブラウザでCookieが無効になっています。詳細については、ここをクリックしてください。」)、適切なエラーが発生した場合は、適切なエラーを報告してください。 FacebookやTwitterのような他のほとんどのWebサイトも、いずれにしてもCookieがないと機能しません。

21
Luc

最も一般的な理由は、彼らが誤ってそれを行っており、彼らがそれを行ったことを知らないということです(以下の段落4を参照)。

2番目に多い理由はプライバシーです(パラノイア?)。一部の人々は、どんな経費で追跡を反対しています。私は、彼らがこの例ではCookieが何であるかを本当に理解していないことに気づく傾向があります。より可能性が高いのは、「トラッキングが悪い」と考えてオフにすることです。たとえば、セッションCookie、ファーストパーティサードパーティCookieなどの違いは何もわからないままです。

さらに重要なのは、ユーザーが非常に基本的なWebサイト以外でCookieを無効にしている状況を説明することが現実的ではないと私は考えています。静的コンテンツへのリンクをたどる以外にユーザー操作がほとんどない基本的なWebサイト以外では、Cookie(またはURLベースの同等のもの)の使用を避けることはできません。ログインと買い物かごは忘れることができます。それらを作成するには、少なくともセッションまたはCookieが必要です(セッショントラッキングにはCookieまたは同等のURLが必要です)。

Webサイト開発者として12年間で、Cookieを無効にした唯一の人が偶然にCookieを無効にしてしまいました。例外はありません、これは、 Internet Explorerで、セキュリティ/プライバシーのスライダーを「高」に上げることは「中」よりも優れていると考えました。すべての場合において、それらが中程度のレベルに戻したのは、それがどのような影響を及ぼし、どのくらいの数のWebサイトが壊れているかを指摘した後です。多くの場合、ユーザーは2番目のブラウザをインストールしました。これは、元のブラウザが機能していないため、元のブラウザが「壊れている」と考えているためです。そのため、トラフィックの多いサイトの場合は、適切な検出方法を使用してCookieを無効にしていることをユーザーに通知することが重要だと思います。

一意のIDをURLに保存することでCookieの使用を回避します(.NETおよびその他のフレームワークはこれをネイティブでサポートします)が、これは問題をURLに移動するだけであると信じています。同じことを行う自作の方法を考え出した場合、すべてのURL IDがユーザーのIPアドレスに関連付けられていることを確認してください。そうでない場合は、セッションハイジャックのための非常に簡単な方法を作成します。ユーザーがリンクを送信するだけで、送信ユーザーのセッション状態を取得します。

ログインを必要とする、またはショッピングカート機能を備えている主要なWebサイトの大部分は、Cookieが必要であり、これを試して回避するのは賢明ではないと私は思います。あなたはおそらくクッキーを無効にしているユーザーの1%のごく一部について話しているでしょう。 WebTrendsのような自動システムから生成された統計にはCookieをサポートしない(および必要としない)Webクローラーやボットなどが含まれるため、これを無効にしてください。クッキー。 Cookieを無効にしていて、実際にWebサイトが機能することを期待しているユーザーの10人に1人ではなく、5000人に1人のように話しているのは確かです。

9
NickG

ドキュメントには、ユーザーがCookieを無効にしている状況に備える必要があると書かれています。

「準備済み」であることは、HTTP Cookieがなくても機能する完全に機能するログインシステムを作成することと同じではありません。

ユーザーは「追跡」されないようにHTTP Cookieをオフにすることができます。この場合、秘密のURLを使用するなど、セッション管理に別のアプローチを使用することを考えることができます。 URLにセッションIDを保持することには、セキュリティとユーザビリティのメリットがありますが、実際にはセキュリティとユーザビリティの重大な問題、およびこのメッセージはこのアプローチを推奨質問はURLにセッションIDを保持することのセキュリティに関するものではなかったため、この(興味深い)問題についてはここでは説明しません。

この問題は技術的なものだけでなく、受容性の問題でもあります。ユーザーが自発的にCookieをオフにすると、追跡されたくないと考えることができます。 回避しようとするCookieのブロック(「自分自身のために」であっても)は可能性が高いです彼を怒らせる。

代わりに、Webアプリケーション内のセッション管理に必要なのはセッションCookieのみであり、ブラウザーを閉じたときにすべてのCookieを自動的に消去できることをユーザーに説明できます。

6
curiousguy