Подтвердить что ты не робот

Вход в несколько OpenIds

Я разрабатываю приложение, которое позволяет пользователю регистрироваться в OpenId (например, Google), который будет "основным" идентификатором, используемым для входа в систему. Приложение также позволит пользователю "связывать" другие учетные записи (например, Facebook), чтобы воспользоваться дополнительными функциями.

В то время как я довольно четко разбираюсь в дизайне, который будет хранить отношения между несколькими учетными записями (обычно просто сохраняя дополнительное сопоставление userId-openId-openIdSource), мне интересно, как автоматизировать процесс фактического входа. Последовательность, которую я ищу:

  • Войдите в систему с помощью "основной" учетной записи (например, Google).

  • Автозапуск пользователя в свои "связанные" учетные записи (например, Facebook) < --- how??

Если у пользователя нет открытого сеанса с сторонними поставщиками OpenId (например, Facebook), то я понимаю, что она должна будет войти в "связанные" аккаунты каждый раз после завершения шага 1. Есть ли способ автоматизировать это (не сохранив пароль)? Или ожидается логический вход для шага 2?

4b9b3361

Ответ 1

Да, пользователь должен войти в систему со всеми другими "связанными" учетными записями вручную, и не рекомендуется хранить их пароли, и я думаю, что пользователю это тоже не понравится.

Но OAuth сделает трюк для вас. OAuth позволит вам перенаправить пользователей на facebook и получить их в систему. И тогда facebook предоставит вам токен доступа, который вы можете использовать для извлечения информации о пользователе из facebook, сообщения на стене и т.д.

Поэтому используйте OpenID для регистрации пользователей, а затем используйте OAuth для входа в "связанные" учетные записи.