Курс Python → Безопасные SQL-запросы в Python 3.11
SQL-инъекции — это один из наиболее распространенных способов атаки на веб-приложения. При этом злоумышленник может внедрить SQL-запрос в пользовательский ввод и получить несанкционированный доступ к базе данных. Для защиты от таких атак необходимо использовать безопасные методы работы с базой данных.
В Python 3.11 был добавлен новый класс LiteralString, который позволяет создавать безопасные SQL-запросы. Этот класс автоматически экранирует специальные символы в строке, что делает ее недоступной для инъекций. Таким образом, использование LiteralString обеспечивает надежную защиту от SQL-инъекций.
Пример использования LiteralString для защиты от SQL-инъекций:
from psycopg2 import sql
query = sql.SQL("SELECT * FROM users WHERE username = {}").format(sql.LiteralString(username))
В данном примере переменная username экранируется с помощью LiteralString, что позволяет передавать ее в SQL-запрос без опасения SQL-инъекций. Таким образом, использование LiteralString в Python 3.11 обеспечивает безопасность работы с базой данных и защиту от потенциальных атак.
Другие уроки курса "Python"
- Форматирование данных с pprint
- Удаление символа из строки
- Оптимизация создания строк
- F-строки в Python 3.8
- Определение объема памяти объекта
- Объединение объектов в Python
- Функция enumerate() в Python
- Функция format() в Python
- Удаление и повторная вставка ключа в OrderedDict
- Python Поверхностное Копирование
- Функции range() в Python
- Работа с очередями в Python
- Создание класса очереди
- Библиотека funcy: удобные утилиты
- Удаление ресурса в Python
- Класс-оболочка для словарей
- Проверка строки на палиндром
- Изменения в обработке логических значений
- Отношения подклассов в Python
- Генератор списка с условием if
- Python Translator: создание локальных переводчиков
- Умножение строк и списков
- Подсчет элементов в Python
- Объединение словарей в Python 3.5+
- Объединение словарей в Python
- Проверка однородности элементов списка
- Переворот строки с помощью срезов
- Статическая типизация в Python
- Установка Home Assistant
- Обработка аргументов Python
- Работа с рекламными данными в Pandas
- Класс Counter() для подсчета элементов
- Удаление элементов из списка в Python
- Преобразование списка в словарь через генератор
- Конкатенация строк с join() в Python
- Копирование и вставка текста в Python
- Простой калькулятор Python
- Python Calendar Usage
- Python union() функция — объединение множеств
- Установка пакета в Python
- Получение текущей директории
- Отправка поздравлений по дню рождения
- Считывание бинарного файла в Python
- Пропуск начальных строк с помощью dropwhile()
- Генераторы списков в Python















