2011-01-03 9 views
2

私は自分のウェブサイトでOpenIDを実装していますが、stackoverflow.comなどのサイトで自分のGmailアカウントが自分のFacebookアカウントにリンクされていることが分かりました。2人のOpenIDプロバイダを同じユーザとして関連付ける方法

など。私は初めてstackoverflow.comに来て、私は自分のGmailアカウントを使ってサインインします。その後、私はログオフし、ブラウザからクッキーをクリアして、stackoverflow.comに戻りますが、今回は、Gmailの代わりにFacebookを使用してログインします。どうやら、stackoverflow.comは私のFacebookアカウントが私のGmailにリンクされていることを知っています。私のユーザー設定はすべて、最初にgmailでサインインしたときから復元されているからです。だから明らかにstackoverflow私のGmailとFacebookのアカウントが両方私であることを知っている。

私の実装に戻ります:gmailやFacebookを使用してユーザーにログインすると、名前やメールアドレスなどのユーザー情報を含む投稿が返されます。自分のウェブサイトに自分のGmailアカウント([email protected])でログインしてから自分のFacebookにログインし、facebookアカウントでも実際に[email protected]を使用していると言っても過言ではありません同じ人?

これは他の人が同じ目標を達成する方法ですか?

答えて

2

私はそれがと同じですが、同じ電子メールアドレスを持つ2人の人が同じユーザーであると考えると安全です。

もう1つの方法は、サイトの2つのアカウントをリンクする機能を提供することです。私が言っていることは、ソーシャル認証が実装されていることがわかったということです.OpenIDやFacebookを使ってログインすると、それぞれ別々のエンティティになります。ユーザーが別のシステムを使用してログインしようとする前に、にFacebook/Twitter/OpenIDアカウントへの接続を促すことができます。ソーシャルエンジニアリングのほんの少しがあなたに多くの問題を救うかもしれません。 が接続されていない場合は、もちろん問題があります。別途ログインしてください。私の頭の上から離れて、TripItは1つに別のアカウントに参加することができます。この機能を提供するかもしれません。

ちょっと考えてください。

+0

あなたの他の考えは私が考えていたものです。 GmailとFacebookを使って別々にログインし、既存のアカウントの1つをもう1つのアカウントにマージしようとすると、どうなるのだろうと思っていました。私は、何が上書きされるのか把握して、2つのアカウントを接続するだけでいいと思います。 – justinl

+0

正確に。事態が激しくなるとFacebookデータが使用されるという幹部の決定を下すかもしれません。なぜなら、それは「もっと更新された」ものなのですから。そうしないと、マージ中に競合が発生した場合にgitが行う方法と同じように行うことができます。ユーザーには競合するデータを提供し、格納したいデータを選択させます。 –

関連する問題