web-dev-qa-db-ja.com

ログインしたセッションを他のWebサイトから非表示にするにはどうすればよいですか?

ほとんどの人は自分のfacebook/gmail/etcに接続している間、ウェブを閲覧し続けます。アカウント。他のウェブサイトはどういうわけかログインしているアカウントを知っています

たとえば、 hide.meの急流のページ にアクセスすると、アカウントへのアクセスをこのWebサイトに(明示的に)承認したことがない場合でも、どのログインが検出されたかがわかります。

「シークレットブラウジング」への切り替えや Ghostery などの拡張機能の使用がいくつかの点で役立つことは知っていますが、これをブロックするより簡単な方法はありますか?

11
Sparkler

あなたが気づいているのは、Facebook、Gmailなどとのセッションのクライアント側の確認だと思います。共有スクリプトがfacebook.comから発信され、そのホスト名でアクティブなセッションがある場合、合理化された共有ボタンが表示されます(例)アカウントの場合。 FacebookのスクリプトにあなたをリンクしているWebサイトは、あなたがFacebookにアクセスしたり、その情報にアクセスすることを明示的に許可しない場合、Facebookが管理していないホスト名に基づいて、あなたが誰であるかを確認できません。

つまり、ブラウザが現在facebook.comのセッションCookieを保持している場合は、そのスクリプトのアカウント固有の機能を使用できます。それはwould Facebookにあなたがどこにいて、今何をしているのかについてかなり良い台帳を提供しますが、それは便宜の問題として意味されます(ただし、Googleの追跡Cookieにすぎません)。安全なプロキシを介して作業中にこのようなリークを回避したい場合は、少なくともChromeまたはFirefoxでシークレットモードにできます。

編集:

hide.me の場合、見込み顧客を怖がらせて自分が知っている以上のことを考えさせるために、彼らは自分の立場にあるホストにできる限りのことをしています。たとえば、 FacebookとGoogle+にログインしているかどうかを確認する方法は次のとおりです 。 Google+の場合、新しいimg要素をDOMに追加し、要素からの「ロードされた」イベントをリッスンします。つまり、ブラウザがロードできるかどうかを文字通りチェックしているだけです非ユーザーが利用できない画像。

15
AJAr

Facebookの場合、SDKにより、Webサイトはユーザーがログインしているかどうかを判断できます。

FB.getLoginStatus() を使用すると、ユーザーがFacebookにログインしており、アプリを認証したかどうかを確認できます。ユーザーには3つの可能な状態があります。

  • ユーザーがFacebookにログインし、アプリケーションを認証しました(接続済み)
  • ユーザーはFacebookにログインしていますが、アプリケーションを認証していません(not_authorized)
  • ユーザーは現在Facebookにログインしていないため、アプリケーションを認証したかどうかはわかりません(不明)。

他のソーシャルネットワークにも同様の方法があります。

ログインしたセッションを他のWebサイトから非表示にするにはどうすればよいですか?

あなたが取ることができる良い予防策は、ブラウザで サードパーティのCookie を無効にすることです。これにより、FacebookまたはTwitterのリソースを参照するWebサイトのHTMLページがブラウザにリクエストとともに認証Cookieを送信するのを防ぎ、APIがログインしているかどうかを判断できなくなります。

ただし、一部のWebサイトは、リクエストにファーストパーティCookieを含めるポップアップウィンドウを開くことでこれを回避しようとします(ソーシャルネットワークドメインへの直接リクエストであるため)。この結果はwindow.openerを介して通信されます。あなたがいるウェブサイトのドメイン。ブラウザのポップアップブロッカーを設定することで、これらをブロックすることができます。ただし、ポップアップブロッカーを最も厳しい設定に設定しない限り、他のページ要素をクリックしたときにWebサイトがポップアップを開いてプライバシーを公開できる可能性があります。

サイトがログインセッションステータスを取得することを完全にブロックする場合は、プライベート/シークレットモード(これは執筆時に機能します)またはクリーンなCookieと空のHTML5ローカルオブジェクトを備えた別のブラウザーを使用する必要があり、Flashもすべてクリアする必要がありますブラウザー間で共有できるSilverlightローカルストレージアイテム。ただし、Facebookは現在、ブラウザプラグインを使用してデータを保存していることはありません。

4
SilverlightFox