Вопрос дизайна относительно OpenID - PullRequest
2 голосов
/ 06 января 2010

Я строю свой собственный блог по разным причинам - в основном из-за опыта работы с различными инструментами - но также потому, что таким образом у меня может быть блог, который думает как я;).

Я внедрил очень узкую систему аутентификации, в которой пользователи могут входить в систему с использованием Open ID. У меня есть классическая страница входа в систему - если новый пользователь входит в систему, я спрашиваю его имя, веб-сайт и адрес электронной почты - ничего особенного здесь.

Теперь сложные моменты приходят, когда дело доходит до комментариев. Я хочу поддержать следующие сценарии:

  1. Анонимные комментарии
  2. Если пользователь вошел в систему, он, конечно, может публиковать сообщения под этой учетной записью
  3. Если пользователь не вошел в систему, но имеет учетную запись на сайте, он должен иметь возможность войти в систему и опубликовать ее за 1 раз
  4. Если пользователь не вошел в систему и не имеет учетной записи, он должен иметь возможность аутентифицироваться, заполнять информацию о пользователе и публиковать все за один раз.

Первые 2 достаточно просты, и у меня это уже работает. Последнее довольно просто - когда пользователям, не прошедшим проверку подлинности, показывается стандартная форма с 5 входами - OpenID, Имя, Веб-сайт, Электронная почта и Комментарий. Если пользователь вводит информацию в логин OpenID, я аутентифицирую его, создаю новую учетную запись пользователя и отправляю комментарий.

Это номер 3, с которым у меня проблемы. Поскольку я не знаю фактический URL-адрес OpenID, который есть у пользователя, пока я не аутентифицирую его (т. Е. Для учетных записей Google все вводят один и тот же URL, но после аутентификации мой сайт получает другой URL-адрес), я не знаю, должен ли я спрашивать для имени, веб-сайта, электронной почты или нет - и я борюсь с тем, как я должен представить это должным образом.

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

Я рассмотрел простое обновление профиля пользователя, если у него есть учетная запись, но я мог видеть, что раздражение так же, как пользователи могут не помнить, что у них есть учетная запись. Я просто не могу обернуть голову, как заставить это работать хорошо и наглядно (для пользователя).

Любой вклад приветствуется.

Забыл сказать, проблематично можно увидеть, используя мою версию для разработки этой @ http://dev.blogger.kaareskovgaard.net. Перейдите к любой из последних бессмысленных публикаций и попробуйте комментировать как анонимный пользователь. Затем попробуйте комментировать и указать URL-адрес OpenID. Теперь, если вы попытаетесь прокомментировать еще раз, войдя в систему, вас попросят предоставить только реальный комментарий. Наконец, снова выйдите из системы и введите тот же URL-адрес OpenID - теперь вам по-прежнему необходимо заполнить отображаемое имя, веб-сайт и адрес электронной почты - меня это раздражает.

1 Ответ

0 голосов
/ 25 января 2010

Я решил, что, используя вышеуказанную схему, нет правильного способа справиться с этим. Я перешел к тому, чтобы просто позволить людям проходить аутентификацию с помощью OpenId и отображать красивый логотип и их URL-адрес OpenID, с которыми они идентифицировались при аутентификации. Хранение профилей пользователей на сайте для комментаторов тогда просто опускается. Я думаю, что это, вероятно, лучший способ справиться с этим в любом случае, и я не уверен, была ли моя первоначальная идея полезной, если бы я смог найти хорошее решение.

...