Back to questions
Middle
6
Как можно защититься от SQL-инъекций?
Companies where asked
Япоки
Answer from AI
sobes.tech AI
Для защиты от SQL-инъекций в Go рекомендуется использовать подготовленные выражения (prepared statements) и параметризованные запросы, которые отделяют код SQL от данных пользователя. Это предотвращает возможность внедрения вредоносного SQL-кода.
Пример с использованием пакета database/sql:
stmt, err := db.Prepare("SELECT * FROM users WHERE username = ?")
if err != nil {
// обработка ошибки
}
rows, err := stmt.Query(username)
// далее работа с результатом
Также важно:
- Не формировать SQL-запросы конкатенацией строк с пользовательским вводом.
- Использовать ORM или библиотеки, которые автоматически параметризуют запросы.
- Ограничивать права пользователя базы данных.
- Проводить валидацию и фильтрацию входных данных.
Эти меры значительно снижают риск SQL-инъекций.