Что делать, если пользователь не может войти в систему со своим OpenID? - PullRequest
5 голосов
/ 18 ноября 2009

Сценарий: Пользователь входит на сайт (например, StackOverflow) с OpenID. Год спустя они возвращаются на сайт, но их провайдер OpenID обанкротился и не позволяет им входить в систему.

Как лучше им оправиться от этой ситуации? И есть ли какие-либо сайты с поддержкой OpenID, о которых вы знаете, которые уже внедрили решение для этого?

Здесь есть отличная статья о лучших практиках проверяющей стороны , и у них есть хорошее предложение, но я все еще ищу пример этого в действии:

Обеспечение функциональности потерянного идентификатора для переключения на новый идентификатор без доступа к старому один

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

Обоснование: пользователи иногда проигрывают возможность использовать их идентификаторы, например, когда их поставщик перестает предложить сервис им. это функциональность позволяет пользователям восстанавливать из этой ситуации, не теряя их данные.

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

Ответы [ 3 ]

7 голосов
/ 18 ноября 2009

StackOverflow позволяет связать несколько OpenID с учетной записью, чтобы вы могли настроить поставщика резервного копирования.

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

В конечном счете, вы будете иметь случайного пользователя в любой системе, с которой нельзя справиться автоматически. Даже без OpenID пользователь может легко потерять доступ к своей электронной почте и забыть свой пароль или забыть как свое имя пользователя, так и пароль. Иногда единственным решением будет либо «вам нужно зарегистрироваться снова», либо «наши сотрудники службы поддержки предоставили вам доступ к этой учетной записи».

2 голосов
/ 24 января 2010

Я реализовал функцию восстановления аккаунта, о которой думал. После того, как идея на некоторое время остыла, я думаю, что придумал довольно простой процесс для пользователя, который все еще защищен.

Вот процесс:

  1. Нажмите ссылку "возникли проблемы" под кнопками OpenID.
  2. Введите свой адрес электронной почты и нажмите «Отправить письмо для восстановления учетной записи».
  3. Откройте письмо и нажмите на ссылку. (Ссылка содержит токен одноразового входа в строку запроса.)
  4. Вы автоматически войдете на мой сайт (токен для однократного входа будет уничтожен, и его нельзя будет использовать снова), и вам будет предложено войти с дополнительным OpenID.

Я также сделал видео, демонстрирующее это:

http://regexhero.net/blog/2010/01/using-openid-on-regex-hero.html

0 голосов
/ 18 ноября 2009

Одна вещь, которую вы могли бы сделать, - это создать свой сайт, который будет не только openID Consumer , но и OpenID Provider . Таким образом, если по какой-либо причине провайдер обанкротился, вы можете попросить своих членов просто войти в систему с помощью вашего провайдера и позволить им каким-то образом вернуть свой профиль. Например, как SO позволяет использовать несколько идентификаторов или, возможно, просто перенести функциональность с одного идентификатора на другой. Ваша самая большая проблема будет в том, что их оригинал ID не может быть аутентифицирован. Я не уверен, что разрешение нескольких идентификаторов облегчит это, но это может предотвратить такие ситуации, если ваши пользователи будут активны.

...