Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 19901|Отговор: 0

[Комуникация] C# Winform предотвратява инжекцията на SQL

[Копирай линк]
Публикувано в 29.01.2015 г. 10:12:59 ч. | | |
Параметър по преминаване:
String sql = "Изберете Count(*) от Zhuce, където потребителско име=@username и pwd=@pwd и тип = @type";
SqlConnection conn = нов SqlConnection(Common.Context.SqlManager.CONN_STRING);
            Кон. Open();

            SqlCommand cmd = новият SqlCommand (sql, conn);
cmd.Parameters.Add("@username",SqlDbType.VarChar,30);
cmd.Parameters.Add("@pwd",SqlDbType.VarChar,30);
cmd.Parameters.Add("@type",SqlDbType.VarChar,10);
cmd.Parameters["@username"]. Value = потребителско име;
cmd.Parameters["@pwd"]. Стойност = PWD;
cmd.Parameters["@type"]. Стойност = власт. Текст;

            int брой = Convert.ToInt32(cmd.ExecuteScalar());

            Кон. Close();



Не съм сигурен коя база данни използваш
Ето един фрагмент от SQL-Server код
Най-важното за предотвратяване на инжекционни атаки не е да се използват параметри за сплайсинг, а методи за присвояване на параметри.
SqlConnection conn=......
SqlCommand comm =new SqlCommand ("изберете брой (*)от Таблица 1, където име = @loginame и парола = @loginpassword",conn);
комуникации. Parameters.Add(new SqlParameter("@loginame",SqlDbType.NVarchar,20);
комуникации. Parameters["@loginame"].value=TextBox1.Text;
комуникации. Parameters.Add(new SqlParameter("@loginpassword",SqlDbType.NVarchar,20);
комуникации. Parameters["@loginpassword"].value=TextBox2.Text;
комуникации. Connection.Open();
int mark=(int)comm. ExecuteScalar()
//--mark用于标记




Предишен:comboBox настроен само за четене (select-only)
Следващ:SQL Server Composite Index Learning
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com