Какие стандарты для символов разрешены в текстовых полях

Какие типичные символы разрешены в текстовых полях при регистрации нового пользователя? Существуют ли стандарты www? Особенно интересны допустимые типы символов имени пользователя и пароля.

Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
3
0
6 588
10
Перейти к ответу Данный вопрос помечен как решенный

Ответы 10

ПОЖАЛУЙСТА, разрешите апострофы для всех имен О'Брайенов, О'Мэлли, О'Рейли и других имен, содержащих апострофы!

Ответ принят как подходящий

Я предпочитаю использовать буквенные, числовые и специальные символы для создания паролей. Я действительно ненавижу, когда сайты отказывают мне в использовании специальных символов, особенно! @ $ *.

Не ограничивайте символы пароля. Чем больше символов доступно, тем более безопасными могут быть пароли. Нет веской причины запрещать пробелы, например, в пароле.

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

Только не забывайте экранировать вводимые пользователем данные, когда вы выводите их снова.

По какой причине вы должны когда-либо отказываться от каких-либо персонажей? Вы должны просто разрешить все, за возможным исключением нулевого символа. Вам придется кодировать имена пользователей, когда вы печатаете их на своем сайте, чтобы избежать проблем с межсайтовым скриптингом, но вам, вероятно, все равно стоит это сделать, даже если вы фильтруете «опасные» символы на всякий случай. Разрешение использования всех символов, особенно для паролей, значительно увеличивает удобство использования (и безопасность в случае паролей). Также имейте в виду, что некоторые пользователи могут захотеть ввести символы UTF8, если в их именах есть диакритические знаки (или если они используют нелатинский алфавит, например китайский или русский).

Пароли, как абсолютный минимум, должны разрешать доступ к каждому символу с клавиатуры в целевом языковом стандарте (ах).

Если вы ограничиваете символы, это не должен для безопасности (например, предотвращение кавычек, чтобы люди не могли вставлять SQL). Ваш код должен уметь обрабатывать любые символы во входной строке, правильно экранируя их всякий раз, когда они куда-то отправляются. Но их можно ограничить по бизнес-причинам или по некоторым другим практическим причинам (например, пример Зака ​​с URL-адресом).

Будет ли ваше приложение использоваться неанглоязычными пользователями?

По крайней мере разрешите европейские символы вроде á à é è ì.

Конечно, если он должен быть действительно интернационализированным, вы должны разрешить любые символы на таких языках, как китайский и арабский.

Мне кажется, вы не можете составить список разрешенных персонажей, если не хотите никого рассердить.

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

  • Поля пароля должны разрешать любые персонажи (вы все равно собираетесь его хешировать, верно?)
  • Текстовые поля должны быть ограничены нет определенными символами (например, [A-Za-z]). В противном случае вы запретите людям, которые нуждаются (или хотят) использовать символы с диакритическими знаками. Со стороны базы данных / обработки вы будете экранировать или использовать привязку для сохранения ваших данных.
  • Если у вас есть конкретное поле, то знать может принимать только определенный набор символов (бизнес-причины и т. д., Как указано JW). Например, формы, предназначенные только для аудитории из США, могут ограничиваться числами и тире для почтовых индексов.

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

имя пользователя: все, кроме, возможно, пробела ... или нескольких пробелов (т. е. один пробел в порядке, более одного пробела = 1 пробел)

Хорошее замечание о пробелах в именах пользователей. Это особенно важно для сайтов с общедоступными профилями. «JohnDoe» и «JohnDoe» могут показаться пользователям одним и тем же лицом.

Rob 20.01.2009 00:43

Чтобы исправить это, удалите начальные и конечные пробелы и исправьте внутренние пробелы до одного пробела. Приятно быть «Зан Рысь»

Zan Lynx 20.01.2009 02:15

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

Другие вопросы по теме