sql >> Base de Datos >  >> RDS >> Sqlserver

SqlParameter no permite el nombre de la tabla:¿otras opciones sin ataque de inyección sql?

Ir a una lista blanca. Solo puede haber un conjunto fijo de posibles valores correctos para el nombre de la tabla de todos modos, al menos eso espero.

Si no tiene una lista blanca de nombres de tablas, puede comenzar con una lista blanca de caracteres - si lo restringe a A-Z, a-z y 0-9 (sin ningún tipo de puntuación), eso debería eliminar gran parte de la preocupación. (Por supuesto, eso significa que no admite tablas con nombres extraños... realmente no conocemos sus requisitos aquí).

Pero no, no puede usar parámetros para nombres de tablas o columnas, solo valores. Ese suele ser el caso en las bases de datos; No recuerdo haber visto uno que hiciera parámetros de soporte para eso. (Me atrevo a decir que hay algunos, por supuesto...)