web-dev-qa-db-ja.com

Facebookは、Gmailにログインしているかどうかを検出します

今日、私はいくつかのWebセキュリティで遊んでいて、Facebookでパスワードを忘れるリンクをテストすることに決めたとき、驚きがありました。

パスワードリセットコードをGmailアドレスに送信することを選択し、その直後にFacebookが別のウィンドウでポップアップし、Gmailアカウントにすでにログインしているのでパスワードリセットコードを心配する必要がないことを伝えるメッセージが表示されます。

Already logged in

彼らはどうやってそれを行うことができますか?

OpenIDプロトコルと関係があると思いますが、FacebookがGmailアカウントとやり取りするために、それを許可する必要はありませんか?

71
Raisen

GoogleのOAuthトークンは https://accounts.google.com/b/0/IssuedAuthSubTokens にあります(リンクされたアカウントとは異なります)。

私が試したとき、Facebookは最初にOAuthプロンプトでポップアップを作成し、その後の試行で空のポップアップを短時間だけ開きました。 Facebookの認証を解除すると、プロンプトが再び表示されます。

21
antimatter15

Googleアカウント を見て、Google情報へのアクセスをFacebookに許可したかどうかを確認しましたか?

8
microft

OpenIDを使用します。以前にOpenIDを使用してFacebookに電子メールへのアクセスを許可したことがある場合(連絡先をFacebookにインポートする場合など)、それを試みます。まだ行っていない場合は、Facebookにアクセスするためのプロンプトが表示されます(いいえと答えた場合は、パスワードリセットの電子メールが配信されるのを実際に待ちます)。

3
Yuliy

[アカウント設定]には、[リンクされたアカウント]セクションがあり、他のサイトのOpenID対応アカウントの1つにログインしている場合、Facebookに自動的にログインさせることができます。 Gmailアカウントをリンクしたことを忘れた可能性がありますか?

2
Charlie Melbye