4
SQL Serverデータベースに接続されたC#アプリケーションを使用しています。データのセキュリティについて聞いたことがあるので、SQL Serverのストアドプロシージャで作業することにしました。C#SQLインジェクション
私の質問は、SQL Serverでストアドプロシージャを作成した後で、C#でコードが保護されているか、SQLインジェクションを防止していないのですか?正しいコードを使用しましたか?
SqlConnection con = new SqlConnection("Server = localhost;Database = test; Integrated Security = true");
SqlDataAdapter da = new SqlDataAdapter("selectdhena", con); // Using a Store Procedure.
da.SelectCommand.CommandType = CommandType.StoredProcedure;
DataTable dt = new DataTable("dtLista");
da.SelectCommand.Parameters.AddWithValue("@full_name", txt.Text);
dtg.ItemsSource = dt.DefaultView;
da.Fill(dt);
が、AddWithValueを使用しないでください。 SqlDbTypeで適切なAddを使用し、パラメータの予想されるサイズを – Steve
私に例を与えてもらえますか?C#newになってしまいました。# – user5827232
SQLインジェクション攻撃を避けるためにストアドプロシージャを使用する必要はありません。 –