![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Pero no mezcles las cosas, ahora no se sabe qué has preguntado ni de lo que trata el hilo
![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#2
|
|||
|
|||
|
Cita:
la cuestion que pregunto es si con el codigo que he puesto arriba, la aplicacion es segura y no vulnerable a ataques de inyeccion sql. como podreis imaginar los datos almacenados en la bd tienen que ser CONFIDENCIALES y no pueden estar expuestos a que cualquiera pueda alterarlos, leerlos... no repito el codigo otra vez esta arriba, pero esto es una pincelada Código:
sql.add('SELECT * FROM '+torigen);
Código:
...
ADOQuery1.sql.add ('SELECT campo1,campo2 FROM tabla WHERE condicion =:parametro');
ADOQuery1.parameters.parambyname('parametro').value := unvalor ;
...
|
|
#3
|
||||
|
||||
|
Con parámetros, es lo más seguro.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#4
|
|||
|
|||
|
muchas gracias Casimiro Notevi
deduzco entonces que esto es seguro Código:
...
ADOQuery1.sql.add ('SELECT campo1,campo2 FROM tabla WHERE condicion =:parametro');
ADOQuery1.parameters.parambyname('parametro').value := unvalor ;
...
Código:
sql.add('SELECT * FROM '+torigen);
Código:
sql.add('SELECT * FROM :torigen');
parameters.parambyname('torigen').value := combobox1.text ;
si estoy en lo cierto, alguna idea de como podria implementarlo para que funcionara y fuera seguro? gracias nuevamente |
|
#5
|
||||
|
||||
|
En cuanto a lo de la seguridad, según tengo entendido por lo que he leído, sí, es así.
En cuanto al error, pues no sé, si no pones más código ![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#6
|
|||
|
|||
|
Cita:
Pues el codigo la verdad es que no tiene misterio Error: Código:
error de syntaxis en la clausula From Igual me repito mucho pero habria otra manera de hacerlo garantizando la seguridad? Necesito que la consulta sea flexible a que el usuario pueda seleccionar las tablas y campos de la bd sobre las que hacer la consulta. Los software comerciales lo hacen; posible sera pero en el como podriais darme idea?a mi lo que se me ocurrio ya lo he probado pero me da los problemas que ya he descrito en post de mas arriba. Gracias y saludos Última edición por Casimiro Noteví fecha: 26-11-2012 a las 14:01:03. |
|
#7
|
||||
|
||||
|
No sé access, pero normalmente el nombre de una tabla no puede ser un parámetro.
Lo de la seguridad, tendrás que explicarte mejor, ¿de qué seguridad estamos hablando?, ¿a qué te refieres con "los software comerciales lo hacen"? ¿A qué te refieres con "necesito que la consulta sea flexible"? Por cierto, eso de "select * ..." es la primera regla de la ineficiencia, nunca hacer eso.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| funcion para no repetir codigo:( | ivantj24 | Varios | 12 | 18-10-2012 22:27:45 |
| Componente para buscar registros, para no repetir codigo. | flystar | Conexión con bases de datos | 9 | 28-04-2010 23:16:15 |
| consulta con tabla temporal para hacer acumulados | tgsistemas | MySQL | 4 | 19-03-2010 11:43:41 |
| Componente para repetir informacion | apablado | Varios | 0 | 30-03-2009 17:26:12 |
| Consulta SQL para datos ordenados en otra tabla | cotoprix | SQL | 8 | 26-01-2004 23:54:53 |
|