Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 19901|Antwoord: 0

[Communicatie] C# winform voorkomt SQL-injectie

[Link kopiëren]
Geplaatst op 29-01-2015 10:12:59 | | |
Passer-op-parameter:
string sql = "selecteer aantal(*) uit zhuce waarbij gebruikersnaam=@username en pwd=@pwd en type = @type";
SqlConnection conn = nieuwe SqlConnection(Common.Context.SqlManager.CONN_STRING);
            Conn. Open();

            SqlCommand cmd = nieuwe 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"]. Waarde = gebruikersnaam;
cmd.Parameters["@pwd"]. Waarde = pwd;
cmd.Parameters["@type"]. Waarde = kracht. Sms;

            int count = Convert.ToInt32(cmd.ExecuteScalar());

            Conn. Close();



Ik weet niet zeker welke database je gebruikt
Hier is een stukje SQL-Server-code
Het belangrijkste om injectie-aanvallen te voorkomen is niet het gebruik van splicingparameters, maar het toewijzen van parameters.
SqlConnection conn=......
SqlCommand comm =new SqlCommand ("selecteer count (*) uit Table1 waarbij naam = @loginame en wachtwoord = @loginpassword",conn);
comm. Parameters.Add (nieuwe SqlParameter("@loginame",SqlDbType.NVarchar,20);
comm. Parameters["@loginame"].value=TextBox1.Text;
comm. Parameters.Add (nieuwe SqlParameter("@loginpassword",SqlDbType.NVarchar,20);
comm. Parameters["@loginpassword"].value=TextBox2.Text;
comm. Connection.Open();
int mark=(int)comm. ExecuteScalar()
//--mark用于标记




Vorig:comboBox ingesteld op alleen-lezen (alleen selecteren)
Volgend:SQL Server Composite Index Leren
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com