Я читаю везде (и вижу на практике), что имена пользователей не должны меняться. Когда я спрашиваю, почему в качестве причины указывается "безопасность".
Я искал окончательный ответ о том, почему изменение имени пользователя небезопасно, но я не могу найти ответ.
Может ли кто-нибудь из опытных людей безопасности ответить на этот вопрос?
Примечание: если вы не знаете ответа, пожалуйста, воздержитесь от спекуляций. Я подумал о нескольких причинах сам, но я не знаю ответа, следовательно, вопрос.
UPDATE:
1: По userId я хотел ссылаться на какой-то уникальный идентификатор, будь то идентификатор записи базы данных или какой-либо другой уникальный идентификатор. Мне несколько раз говорили, что изменение имени пользователя плохо для безопасности, даже если имя пользователя не является основным/уникальным идентификатором самой системы.
2: Я разрешаю пользователям изменять свое "публичное имя". Это имя, которое используется для идентификации пользователя другим (не-привилегированным) пользователям. например:
userId: 1234
username: john02
public name: John Jameson
email: [email protected]
3: Как указано Джейсоном и The Rook, последовательность кажется единственной веской причиной. Я чувствую, что эта "лучшая практика" может быть оставлена где-то в прошлом, когда имена пользователей, которые фактически используются в системе, уникально идентифицируют пользователей.