Ошибка «пароль не может содержать кавычки и/или обратную косую черту» появляется в момент регистрации или смены пароля, когда введённая комбинация включает символы ", ' или \, а система их отклоняет. Это не сбой и не бага конкретного сайта — так работает встроенная проверка допустимых символов, и обойти её вводом тех же знаков невозможно.
Решение простое: убрать запрещённые символы из пароля и заменить их на допустимые. Но чтобы понять, почему ограничение вообще существует и как составить пароль, который пройдёт проверку и останется стойким, стоит разобраться в причинах фильтрации. Ниже — подробный разбор.
Почему системы запрещают кавычки и обратную косую черту
Главная причина — защита от инъекций. Символы " и ' используются в языках программирования и запросах к базам данных как ограничители строк. Если система обрабатывает пароль недостаточно аккуратно, кавычка внутри него может «разорвать» строку запроса и изменить логику выполнения команды. Чтобы исключить такой риск, разработчики просто запрещают эти символы на этапе валидации.
Обратная косая черта \ — это символ экранирования во множестве языков и форматов: JSON, SQL, регулярные выражения, пути в Windows. Если пароль с \ передаётся между системами (например, из веб-формы в скрипт, а затем в конфигурационный файл), обратный слеш может «съесть» следующий за ним символ или исказить строку. В результате пароль при сохранении и при проверке окажется разным — и вход станет невозможен.
Отдельная проблема — совместимость между системами. Один и тот же пароль может использоваться в веб-интерфейсе, мобильном приложении и при доступе по протоколам вроде FTP или SMB. Каждый из этих каналов по-своему трактует спецсимволы, поэтому администраторы ограничивают набор до тех знаков, которые гарантированно переживут любую передачу без искажений.
💡Запрет кавычек и обратного слеша — это защита от инъекций и ошибок экранирования, а не прихоть разработчиков.