これは理論的な問題です。
Twitter、Facebook、G+、Instagram のすべてのアカウントにメール アドレスがbill@example.com
あり、ユーザーが Twitter、Facebook、G+、Instagram のアカウントまたは標準の登録フォームでアプリケーションにログインできるようにする Web アプリケーションを設計したいとします。 .
ユーザーの一意の識別子は、電子メール アドレスです。
ここで、メールに登録されたアカウントを既に持っていると仮定してbill@example.com
、Twitter、Facebook、G+、Instagram アカウントをリンクできるようにするメカニズムをどのように設計すればよいでしょうか?
方法 1
最初にログインしてから、他のアカウントに接続するようユーザーに依頼します。
プロ:
- 安全
短所:
- ユーザーがユーザー名とパスワードを忘れた場合はどうすればよいでしょうか?
方法 2
サード パーティの oauth プロバイダーがメールを確認すると仮定すると、サード パーティのアカウントを (アプリケーション内の) 既存のアカウントに、サード パーティから提供された既存のメールに関連付けるだけです。
プロ:
- 簡単、シンプル
短所:
- 安全?
質問
bill@example.com
Facebook からのデータbill@example.com
が G+ からのデータと同じであることを確認するにはどうすればよいですか? または、これを行うためのシンプルでユーザーフレンドリーな方法はありませんか?