Используя OpenID для доказательства членства в Stackoverflow

Частичный ключ:

Это набор атрибутов, которые могут однозначно идентифицировать слабые объекты и которые связаны с одним и тем же объектом-владельцем. Иногда его называют дискриминатором.

Альтернативный ключ:

Все Кандидатные ключи, кроме Первичного ключа, известны как Альтернативные ключи.

Искусственный ключ:

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

Составной ключ:

Если ни один элемент данных не идентифицирует вхождения уникальным образом внутри конструкции, объединение нескольких элементов для создания уникального идентификатора для конструкции называется созданием составного ключа.

Естественный ключ:

Когда один из элементов данных, хранящихся в конструкции, используется в качестве первичного ключа, он называется естественным ключом.

7
задан Community 23 May 2017 в 12:13
поделиться

2 ответа

Невозможно получить идентификатор StackOverflow из OpenID и сделать обратное возможно, но излишне сложно (по сравнению с предложенным вами методом). На мой взгляд, копирование и вставка идентификатора пользователя / URL-адреса профиля не так уж и неудобно.

Однако я могу предложить какое-то решение проблемы олицетворения. Этот метод может показаться немного глупым, но он это самый простой способ, который я могу придумать, чтобы убедиться, что только сам пользователь может отображать значок. Опять же, не думаю, что это слишком неудобно. (Более традиционный метод использования подтверждения по электронной почте невозможен, поскольку электронные письма не являются общедоступными.)

  1. Пусть ваше приложение Facebook сгенерирует случайный (буквенно-цифровой?) Код. Что-то в форме A8IO45QW6T должно подойти.
  2. Удерживайте этот код на стороне сервера вашего приложения Facebook в течение короткого периода времени (скажем, 5 минут).
  3. Попросите пользователя отредактировать их Обо мне информацию, добавив данный код в последнюю строку, затем вернуться в Facebook и подтвердить. Простая проверка HTML для страницы профиля указанного пользователя подтвердит право собственности. Затем пользователь может удалить проверочный код из текста О себе .

Кстати, неплохая идея создать это приложение для Facebook. Я могу просто попробовать!

10
ответ дан 6 December 2019 в 21:19
поделиться

Еще одно решение, позволяющее проводить мгновенную проверку, - это хеширование адреса электронной почты и проверка, совпадает ли он с Gravatar пользователя. Конечно, не каждый пользователь предоставил адрес электронной почты, но вы всегда можете выполнить эту проверку в первую очередь, и если она не удастся, вы можете вернуться к редактированию раздела «Обо мне» (или просто потребовать, чтобы у пользователя был адрес электронной почты). Это не моя идея, поэтому я позволю null объяснить :

Доступен ли у вас исходный код? Поскольку у меня есть решение, чтобы другие пользователи не испортили ваши результаты. Вам просто нужно хешировать адрес электронной почты, используемый зрителем, и проверить ссылку на изображение граватара на странице как , указанную на сайте граватара . Если идентификатор пользователя и хэш изображения совпадают, то внесите изменения в базу данных, иначе ... просто покажи результат. Я могу внести это изменение, но источник кажется потерянным ...: (

2
ответ дан 6 December 2019 в 21:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: