seguridad en Store Procedure de SqlServer 2000

19/04/2005 - 20:00 por Developers | Informe spam
escuche por ahi que es mejor escribir Store Procedure en SqlServer porque
Obtengo Mejor Rendimiento, Seguridad, y Escabilidad; pero la duda que tengo
es al tema de seguridad que tan seguro son los SP ante una amenaza teniendo
como ejemplo este SP:

create procedure dbo.prueba
@area char(2)
as
select codigo, documento,fecha from mitabla where area=@area and
Left(documento,2)<>'TT' and left(documento,2)<>'FF'


si se daran cuenta mi Store Procedure recibe un Parametro que es @area pero
dentro de la sentencia del Where Yo tambien
tengo esto Left(documento,2)<>'TT' and left(documento,2)<>'FF' existen
comillas simples dentro de esta sentencia. Poniendo estas comillas simples
no estoy dando opcion a una Personas Extrañas a que puedan ejecutar
cualquier comando que se les plasca.

Existe alguna manera de proteger estos Store prodecure???


Gracias x sus prontos comentarios que tuvieran me servirina bastante


Developers
 

Leer las respuestas

#1 Alejandro Mesa
19/04/2005 - 20:37 | Informe spam
La sentencia que escribistes no tiene ningun problema pues el left(...) lo
haces sobre el valor de la columna y no utilizando el parametro de entrada.
Ademas, no hay mucho codigo que insertar en un parametro tipo char(2).

La injeccion de codigo se puede hacer cuando se genera una sentencia de
forma dinamica haciendo uso del valor de los parametros. Este no es el caso.


AMB

"Developers" wrote:

escuche por ahi que es mejor escribir Store Procedure en SqlServer porque
Obtengo Mejor Rendimiento, Seguridad, y Escabilidad; pero la duda que tengo
es al tema de seguridad que tan seguro son los SP ante una amenaza teniendo
como ejemplo este SP:

create procedure dbo.prueba
@area char(2)
as
select codigo, documento,fecha from mitabla where area=@area and
Left(documento,2)<>'TT' and left(documento,2)<>'FF'


si se daran cuenta mi Store Procedure recibe un Parametro que es @area pero
dentro de la sentencia del Where Yo tambien
tengo esto Left(documento,2)<>'TT' and left(documento,2)<>'FF' existen
comillas simples dentro de esta sentencia. Poniendo estas comillas simples
no estoy dando opcion a una Personas Extrañas a que puedan ejecutar
cualquier comando que se les plasca.

Existe alguna manera de proteger estos Store prodecure???


Gracias x sus prontos comentarios que tuvieran me servirina bastante


Developers









Preguntas similares