2012-04-04 2 views
1

Я ищу эквивалент функции PHP mysql_real_escape_string() для использования в C# .NET. Я работаю с платформой .NET 3.5. Я не могу найти ничего, чтобы использовать.C# эквивалент функции php mysql_real_escape_string

Я прочитал что-то, что System.Web.HttpUtility будет иметь что-то, но я не могу это использовать. В нем говорится, что у меня нет ссылки на него.

ответ

2

Я сильно подозреваю, что вы не найдете ничего, по двум причинам:

  • Это не является предпочтительным способом избежать атаки SQL-инъекции. Использование параметризованных запросов.
  • В любом случае это будет DB-specific, поэтому почему это mysql_real_escape_string в PHP. Учитывая, что это связано с SQL, я бы не ожидал, что System.Web.HttpUtility будет чем-то вроде, что вы хотите.

Вопрос в том, действительно ли вы пытаетесь передать значение в базу данных или избегать URL-адреса. Если это ускользает от URL-адреса, нам нужно больше узнать о вашем приложении (например, целевом профиле .NET), чтобы помочь вам в дальнейшем. Если он передает значение в базу данных, вместо этого используйте параметризованный SQL.

+0

Ну, это приложение для Windows, которое будет работать на двух клиентах в одной комнате (Центр отправки Красного Креста). сервер будет находиться в одной комнате, поэтому безопасность инъекций в этом случае не большая. (без внешних соединений). Нормальная защита от инъекций будет высокой в ​​моем списке. Параметрированный SQL не является вариантом, так как человек, который будет поддерживать систему, не знает достаточно mySql для этого. Я пытаюсь передать значения, содержащие Aphostroves. – Bernhard

+0

@ Бернхард: Человек, поддерживающий систему, не знает достаточно, чтобы использовать параметризованный SQL? Это удивительно просто - что с этим сложно? Если * это слишком много, спросите меня, я бы очень беспокоился о их способности делать другие вещи ... –

+0

Человек - это сетевой администратор, а не программист. Он может делать небольшие изменения, но большие проблемы будут проблемой. Но, честно говоря, это не имеет большого значения. Инъекция на самом деле не проблема в настройке, в которой используется приложение. – Bernhard

Смежные вопросы