Санация запроса для RediSearch

Есть ли какие-либо рекомендации по очистке термина запроса для RediSearch, например. некоторые символы, такие как * в конце термина или @ - в начале термина, имеют особое назначение в синтаксис запроса, и было бы хорошо удалить некоторые/все из них для запросов, к которым не применяется специальное назначение. Кроме того, мне интересно, есть ли какие-либо последствия для безопасности при передаче произвольных строк запроса.


person mahemoff    schedule 02.10.2018    source источник


Ответы (1)


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

Что касается синтаксиса - да, убедитесь, что зарезервированные символы, такие как @!{}()|-=>, либо экранированы, либо удалены.

person Not_a_Golfer    schedule 02.10.2018