2012-03-14 2 views
2

У меня есть клиент, который просит использовать oauth на своем сайте, чтобы пользователи могли аутентифицироваться с помощью своих учетных записей на Facebook или Google. Мне было интересно, какая информация во время процесса остается постоянной, поэтому я могу связать их с их учетными записями в моей базе данных.Аутентификация и ассоциация OAUTH

Мой первый инстинкт состоял в том, чтобы использовать финальный токен (тот, который использовался для фактического запроса информации с любого сайта), но из моего понимания эти токены могут истечь, нарушив мою ссылку. Как я могу определить, кто есть кто, если истекает их токен?

Если вы все еще не уверены в том, что я имею в виду, возьмите пример stackoverflow. Я запишусь в stackoverflow, используя мои учетные данные google. Как stackoverflow связывает мою учетную запись со своим аккаунтом? Что-то должно сохраниться.

Я чувствую, что у меня что-то явно не видно, но почему-то я не могу соединить точки. Скорее всего, из-за моего невежества относительно oauth.

Любое понимание было бы весьма полезным.

EDIT: Я только что понял, что stackoverflow использует openID. Я лаяю неправильное дерево? Можно ли это сделать с помощью OAuth?

ответ

2

Это зависит от того, что вы пытаетесь выполнить. Если клиент хочет иметь возможность манипулировать данными пользователя на Facebook со своего сайта, то что-то вроде OAuth будет необходимо.

Если клиент просто хочет, чтобы пользователь не нуждался в создании другого имени пользователя и пароля, тогда OpenID, вероятно, подходит.

Если вы используете OAuth, когда токен истекает, вам нужно снова пройти процесс входа в систему и попросить другой. Тайм-аут - это ценная функция безопасности.

+0

Второй случай - тот, который клиент ищет. Поэтому я думаю, что openID - это путь. Спасибо за разъяснения. По какой-то причине у меня сложилось впечатление, что oAuth и openID являются взаимозаменяемыми для этой цели. – Pizano

+0

Вы можете сделать работу OAuth, но вам придется перепрыгивать через большее количество обручей, так как вы могли бы получить доступ к своей учетной записи Facebook, даже если вы этого не хотите. Я уверен, что с Open ID нет никакого способа, чтобы ваш сайт мог коснуться их информации в Facebook. – patrickmcgraw

Смежные вопросы