Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 19901|Vastaus: 0

[Viestintä] C# winform estää SQL-injektion

[Kopioi linkki]
Julkaistu 29.1.2015 10.12.59 | | |
Ohitusparametri:
merkkijono SQL = "valitse count(*) ZHUCEsta, missä käyttäjänimi=@username ja PWD=@pwd ja type = @type";
SqlConnection conn = uusi SqlConnection(Common.Context.SqlManager.CONN_STRING);
            Conn. Open();

            SqlCommand cmd = uusi 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 = käyttäjätunnus;
cmd.Parameters["@pwd"]. Arvo = vammainen;
cmd.Parameters["@type"]. Arvo = teho. Tekstiviesti;

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

            Conn. Close();



En ole varma, mitä tietokantaa käytät
Tässä on pala SQL-Server-koodia
Tärkein asia injektiohyökkäysten estämiseksi on olla käyttämättä splicing-parametreja, vaan käyttää parametrien määritysmenetelmiä.
SqlConnection conn=......
SqlCommand comm = new SqlCommand ("valitse count (*)taulukosta 1, missä nimi = @loginame ja salasana = @loginpassword", conn);
Comm. Parameters.Add(new SqlParameter("@loginame",SqlDbType.NVarchar,20);
Comm. parametrit["@loginame"].value=TextBox1.Text;
Comm. Parameters.Add(new SqlParameter("@loginpassword",SqlDbType.NVarchar,20);
Comm. parametrit["@loginpassword"].value=TextBox2.Text;
Comm. Connection.Open();
int mark=(int)comm. ExecuteScalar()
//--mark用于标记




Edellinen:comboBox asetettu vain luku -tilaan (vain valinta)
Seuraava:SQL Server Composite Index -oppiminen
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com