SQL程序集和SQL注入

时间:2012-11-30 00:49:20

标签: c# .net sql-server-2005 sql-injection

我有几个SQL CLR项目作为程序集添加到我的SQL Server 2005中。可以通过我们的Web应用程序通过存储过程来访问它们,这些程序会触发程序集。

如何以及在SQL程序集中阻止SQL注入的最佳做法是什么?

程序集有一堆构建疯狂SQL语句的代码(例子):

        sqlBuff.Append("SELECT ");
        //  Always put replicate weight values on the first.
        sqlBuff.Append(colBuff.ToString());

        sqlBuff.AppendLine(" FROM ");
        String tableNames = colTabNameHelper.GetTableNameList(colNames);
        String joinStr = colTabNameHelper.CreateJoinStr(tableNames);

        sqlBuff.Append(joinStr);
        sqlBuff.AppendLine(" WHERE (");

        sqlBuff.Append(inMatrix.WeightVar);

我可以在这里预防注射吗?或.NET / SQL Server有帮助吗?我应该担心吗?

1 个答案:

答案 0 :(得分:2)

避免注入攻击的最终方法是使用Parameters。你能在嵌入式组件中使用它们吗?