Пропуски Junior Безопасность веб-приложения обновлено
Параметризованный запрос в SQLAlchemy
Вопрос
Допишите безопасный запрос с параметром.
from sqlalchemy import text
rows = session.execute(
text('SELECT id, email FROM users WHERE email = __(1)__'),
__(2)__,
).all()
Попробуйте сами
Заполните пропуски по номерам.
1
2
Показать ответ и разбор
Коротко
В text() именованные параметры пишутся как :name, а значения передаются вторым аргументом словарём. Драйвер подставит их безопасно.
Что в пропусках
1
2
{'email': email} или {"email": email} или dict(email=email)
Разбор
В text() именованные параметры пишутся как :name, а значения передаются вторым аргументом словарём. Драйвер подставит их безопасно.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.