Как хранить клиентский JS-код в Mysql?

Нужно хранить клиентский JS-код в БД.
То, что это потенциально уязвимое место я знаю, поэтому по максимуму обвесил всяческого рода проверками все входящие данные.
Вопрос вот в чём: стоит ли хранить этот код в чистом виде, или же всё-таки прогонять его через кодировщика (base64 например), и только потом класть в БД. Понимаю, что JS - просто string для БД, но ведь эта строка может содержать разного рода спецсимволы, которые, теоретически, могут навредить БД.
Рускоязычный гугл почти ничего не может сказать по этому поводу, а в англоязычный даёт такие советы, что проще сразу базу дропнуть вручную...
  • Вопрос задан
  • 296 просмотров
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега MySQL
{PHP, MySql, HTML, JS, CSS} developer
Код кладем в базу как есть, меньше читаем про загадочный код который может "повредить базу", больше про PDO и prepared statement. Все косяки могут всплыть только при выводе, если там будет какой-то кривой код - вся хрень произойдет на клиентсайде.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Melkij
@Melkij
PostgreSQL DBA
Текст как текст. У вас проблема, если код надо выводить как исполняемый, да ещё в контексте своего домена или вовсе исполнять на сервере.
А СУБД всё равно, что там за текст. Хоть вообще бинарник в blob писать. Правило одно - никогда не конкатенировать данные в управляющий запрос.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы