Курс 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"
- Получение срезов итераторов
- Избегайте пустого списка
- Декоратор проверки активности
- Вывод букв строки в Python
- Оптимизация поиска в словарях
- Итераторы в Python
- Оператор is в Python
- Python defaultdict добавление ключа
- Обязательные аргументы в Python
- Автоматизация с Python
- Замыкания в Python
- Склеивание строк без циклов
- Python Enumerate
- Переменная Шредингера
- Отношения подклассов в Python
- Функциональное программирование в Python
- Автоматизация скриптов на AWS Lightsail.
- Резервирование символов в Python
- Обработка исключений
- Преобразование строк в числа с плавающей запятой
- Операции с датами в Python
- Модуль os: работа с файлами и папками
- Проверка запуска скрипта или импорта модуля
- Объединение словарей в Python
- Списковый компрехеншен.
- Python Поверхностное Копирование
- Руководство по Pymorphy2
- Оператор continue в Python
- Python 3.12: Псевдонимы типов
- Поиск кода
- Преобразование текста в нижний регистр
- Эффективная конкатенация строк с использованием join()
- Python: библиотеки и функции
- Python union() функция — объединение множеств
- Списки в Python: основы
- Проверка подстроки в строке с помощью in
- Метод splitlines() для разделения строк
- Оценка точности модели
- Модуль subprocess: запуск внешних команд
- Вызов внешних программ в Python с помощью sh
- Работа с Path в Python
- Обработка исключений в Python
- Применение функции к элементам списка















