私の質問はこれとほとんど同じです
唯一の違いは、ユーザーに登録するオプションがあることです (ユーザー名とパスワードを提供します)。ユーザーが同じメールアドレスを持っている場合、ユーザーはアカウントを 1 つだけ登録する必要があります。私のアプリケーションには、Facebook 経由でログインする別の方法があります。
私が基本的にやっていることは、
- ユーザーが初めてサイトにアクセスすると、サードパーティの ID レコードが作成された後、ユーザー名、パスワード、およびメール アドレスのみを持つユーザー アカウントが作成され、ローカル アカウントとペアになります。ユーザー テーブルには空のユーザー名とパスワードが含まれますが、電子メールには、サード パーティのサービス プロバイダーから取得したユーザーの電子メールが入力されます。
そして第二のシナリオ
- ユーザーはサイトへの登録を試みます。電子メールが存在する場合、電子メールが存在するかどうかを確認しますが、それはサードパーティのアカウントを使用して登録されています. ユーザーが入力したフォームを使用して、サードパーティのアカウントとペアになっているユーザーアカウントに挿入します. つまり、ユーザーの電子メールがデータベースに存在する場合.ローカルで作成されたアカウントとサードパーティのアカウントを統合しました。
私の質問は、私のアプローチは安全で信頼できるものですか? アカウントを統合する最善の方法ではない場合、同時にユーザーが同じ電子メール (サード パーティのアカウントからのメール) で登録し、サード パーティのアカウントを持っている場合、それらのアカウントは統合されますか?