Должен ли я выставить идентификатор пользователя для общественности? - PullRequest
17 голосов
/ 02 сентября 2010

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

Ответы [ 7 ]

22 голосов
/ 02 сентября 2010

Если бы это было опасно, переполнение стека не отображало бы идентификаторы пользователей в их URL-адресах, чтобы заставить работать поиск профиля пользователя:

Редактирование серьезности огромных уровней: , если идентификаторы пользователей сами являются конфиденциальными данными; например, ваши первичные ключи по какой-то причине оказываются номерами социального страхования, что, безусловно, будет обязанностью обеспечения безопасности и конфиденциальности. Если ваши идентификаторы пользователей представляют собой просто числа с автоматическим приращением, все ясно.

8 голосов
/ 26 марта 2011

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

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

4 голосов
/ 02 сентября 2010

as Для меня идентификатор так же опасен, как и отображение имени пользователя.

3 голосов
/ 19 июля 2012

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

Представьте, что в лабораторию поступают два образца крови и для каждого образца генерируются результаты анализов.Можно выполнить много разных видов теста, и каждая запись, представляющая результат теста, будет иметь sample_id в качестве внешнего ключа.

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

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

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

2 голосов
/ 02 сентября 2010

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

Убедитесь, что вы никому не позволяете взломать личные данные, просто зная идентификаторы пользователей. У Facebook были такие проблемы. Вот только один пример . Хотя раскрытие идентификаторов пользователей было не целой историей, оно было частью уравнения.

1 голос
/ 02 сентября 2010

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

1 голос
/ 02 сентября 2010

Будет ли это больно?Только вы можете решить это, и вы должны продумать это до конца.Но в целом, это плохая форма для отображения идентификатора пользователя без каких-либо коммерческих причин для этого.(Сохраняет вашу работу, вероятно, не является хорошей деловой причиной.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...