Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 19901|Atsakyti: 0

[Komunikatas] C# winform apsaugo nuo sql injekcijos

[Kopijuoti nuorodą]
Paskelbta 2015-01-29 10:12:59 | | |
Praeiti parametras:
string sql = "pasirinkite count(*) iš zhuce, kur username=@username ir pwd=@pwd ir type = @type";
SqlConnection conn = naujas SqlConnection(Common.Context.SqlManager.CONN_STRING);
            Conn. Atidaryti ();

            SqlCommand cmd = naujas 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"]. Vertė = vartotojo vardas;
cmd.Parameters["@pwd"]. Vertė = pwd;
cmd.Parameters["@type"]. Vertė = galia. SMS žinutė;

            int skaičius = Convert.ToInt32(cmd.ExecuteScalar());

            Conn. Uždaryti ();



Nežinote, kokią duomenų bazę naudojate
Čia yra gabalas SQL serverio kodas
Svarbiausias dalykas, norint išvengti įpurškimo atakų, yra ne sujungimo parametrų naudojimas, o parametrų priskyrimo metodai.
SqlConnection conn=......
SqlCommand comm = nauja SqlCommand ("pasirinkite skaičių (*) iš 1 lentelės, kur pavadinimas = @loginame ir slaptažodis = @loginpassword",conn);
Komunikacija. Parameters.Add(naujas SqlParameter("@loginame",SqlDbType.NVarchar,20);
Komunikacija. Parametrai["@loginame"].value=TextBox1.Text;
Komunikacija. Parameters.Add(naujas SqlParameter("@loginpassword",SqlDbType.NVarchar,20);
Komunikacija. Parameters["@loginpassword"].value=TextBox2.Text;
Komunikacija. Ryšys.Atviras();
int mark=(int)comm. ExecuteScalar()
//--mark用于标记




Ankstesnis:Pasirinktinio įvedimo laukas nustatytas kaip tik skaitomas (tik pasirinkti)
Kitą:SQL serverio sudėtinio indekso mokymasis
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com