Самое простое, что нужно сделать, это просто придерживаться настроек Джанго по умолчанию. Django допускает любой символ в пароле, а также "[unicode] буквенно-цифровой, _
, @
, +
, .
и -
символов" в имени пользователя .
Тем не менее, можно также разрешить более широкий набор символов в имени пользователя. Некоторые люди выступают за то, чтобы разрешить что-либо вообще. Другие обеспокоены некоторыми возможностями, которые это позволяет (например, разные имена пользователей, которые выглядят одинаково). Вы можете выбрать любые правила, которые имеют смысл для вашего сайта, но имейте в виду, что будет сложно выбрать правила, которые разрешают все «нормальные» вещи, исключая при этом все «странные» вещи.
Хорошим примером является сам StackOverflow. Его ограничения на символы имени пользователя не позволяют людям выдавать себя за модераторов или вмешиваться в схему комментирования @
. Тем не менее, результат все еще допускает странные вещи, такие как невидимые имена пользователей .