Может ли мой веб-сайт * безопасно * разрешить вход в систему через Facebook Connect, Google Friend Connect, OpenID, * и * etc?

StackOverflow https://stackoverflow.com/questions/1034648

Вопрос

Возможно ли, чтобы веб-сайт позволял пользователям входить в систему с помощью нескольких различных методов, таких как Facebook Connect, OpenID и т.д.?

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

Есть ли побочный эффект от того, что пользователь с учетными данными, скажем, OpenID и Facebook входит в систему как оба, с отдельной информацией о сеансе, так и каким-либо образом "играет" или обманывает "систему"?

Является ли это основной причиной для предложения только одного?Есть ли другие причины?

Обновить: Чтобы немного прояснить ситуацию, я должен сказать, что мы хотели бы использовать Facebook Connect, но не у всех наших предполагаемых пользователей есть учетная запись Facebook.То же, что и с OpenID и т.д.Мы делай необходимо привязать действия пользователя к определенной локальной "учетной записи", которая, очевидно, будет синхронизирована с любым поставщиком авторизации, который они использовали для входа в систему (или привязать позже, как с SO), но хотелось бы предложить максимально возможное удобство.

Может быть, нам стоит просто обойтись собственными силами?

Это было полезно?

Решение

Я предлагаю отслеживать все различные формы аутентификации в одной учетной записи.Конечно, это может быть сделано только в том случае, если пользователь сам это сделает.Но взгляните на это с другой стороны.Ничто не мешает человеку настроить несколько учетных записей в пользовательской системе аутентификации и выполнять те же "игры", что и использовать различные OpenID-подобные учетные записи для выполнения одних и тех же действий!Использование этих форм аутентификации наряду с пользовательской внутренней системой отслеживания - хороший способ, и на самом деле он не создает никаких новых сложностей в отношении безопасности, которых у вас не было бы при использовании только внутренней системы входа в систему.Это просто добавляет больше факторов удобства для ваших пользователей (за счет большего количества кодирования для вас ... но разве это не всегда так?(:Р) ).

Другие советы

Мои планы для этого состоят в том, чтобы каждый поставщик единого входа мог сопоставлять учетную запись единого входа с локальным идентификатором пользователя.Вы сможете назначить несколько учетных записей единого входа одной локальной учетной записи.Все это аккуратно скрыто за интерфейсом, вероятно, с использованием шаблона Цепочки командования.

Вам следует обратить внимание на использование RPX.Они обрабатывают все это за вас и разрешают Facebook, OpenID, Windows Live Id и многое другое.Результат прозрачен для вас - вы просто получаете непрозрачный токен для представления идентификатора.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top