Хорошо, у меня есть сайт, на котором вы можете зарегистрироваться и войти. Вы также можете войти в свою учетную запись на facebook, twitter или linkedin.
Важно, чтобы пользователи регистрировали только одну учетную запись. Поэтому почему-то я хочу объединить учетные записи пользователей, если они используют разные методы для входа в систему. Какое наилучшее решение для решения этой проблемы?
Например, пользователь регистрируется в своей учетной записи Facebook. Я использую данные для регистрации учетной записи для него автоматически. Должен ли я отправить электронное письмо с именем пользователя и паролем нашего сайта? (Если это соответствует политике Facebook). Должен ли я предоставить им второй экран, где они могут заполнить имя пользователя и пароль? Но это не идея входа в вашу учетную запись Facebook. Это должно упростить вашу процедуру для участия.
Также возможно, что пользователь зарегистрировался на нашем веб-сайте, и в следующий раз он войдет в свою учетную запись Twitter. Как я могу объединить эти 2 счета как один? Какой лучший способ?
Итак, в основном, мой вопрос: у меня есть 4 разных способа, которыми пользователь становится членом нашего сайта. Как я могу убедиться, что все эти 4 способа создают только одну учетную запись, если пользователь решает использовать несколько способов? Какой лучший поток, чтобы убедиться, что он не стал хлопотом для самого пользователя?
Изменить:
Через 3 года после того, как я задал этот вопрос, я сам даю ответ в серии статей: http://www.sitepoint.com/series/using-social-networks-as-a-login-system/