TGViewer
Питонические атаки Питонические атаки @pythonic_attacks · 1.15K subscribers
Post #202 473
Похоже, в отличие от меня, половина людей все-таки внимательно читает документацию (хотя я так и не нашел, где бы это было упомянуто явно), и знает, что psycopg2 делает client-side binding. Для меня это сегодня стало новостью. Я почему-то был уверен, что psycopg2 просто делегирует подстановку данных в запрос серверу БД через подготовленные выражения.

В целом, наверное, нет особой разницы, где происходит подстановка данных в запрос. Если на стороне клиента это сделано хорошо, то оно может быть точно так же безопасно, как и server-side binding. Но всё-таки остаётся какая-то вероятность, что psycopg2 вычищает/экранирует не все опасные символы из данных. Вот будет веселье-то, если вдруг такое обнаружится. А если данные попадают в уже распаршенный запрос на стороне сервера, то это уже гарантированно, что они не смогут поменять логику запроса (уже слишком поздно для этого).

psycopg третьей версии будет делать server-side binding, хотя для нас (программистов) интерфейс не поменяется.

#psycopg
More from @pythonic_attacks
  1. May 24, 2026GPT-5.5 по дефолту предпочитает использовать uv. Совпадение? Абсолютно точно нет. Логично…
  2. Mar 19, 2026Новость вызывает столько противоречивых мыслей, что я даже прерву радио молчание. С одной…
  3. Mar 19, 2026https://openai.com/index/openai-to-acquire-astral/ & https://astral.sh/blog/openai Это не…
  4. Nov 17, 2025Ну что же.. Мы совместно с Эммой Смит опубликовали Pre-PEP о добавлении Раста в CPython. В…
  5. May 19, 2025Вышел трейлер документалки о Python. Что-то на уровне Marvel, возможно даже выше https://w…
  6. May 15, 2025All good things come to an end Что ж, скажем Майкрософту спасибо, что 4 года содержал кома…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →