Foros del Web » Programación web » PHP » Frameworks y PHP orientado a objetos »

CodeIgniter Active Record

Estas en el tema de Active Record en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Que tal amigos trabajar con active record es una forma segura, por temas de seguridad xD, osea evitar SQL Injection ? ya que aca en ...
  #1 (permalink)  
Antiguo 24/01/2011, 10:40
Avatar de HiToGoRoShi  
Fecha de Ingreso: abril-2008
Mensajes: 837
Antigüedad: 6 años, 7 meses
Puntos: 29
Active Record

Que tal amigos trabajar con active record es una forma segura, por temas de seguridad xD, osea evitar SQL Injection ? ya que aca en el trabajo estan diciendo para usar STORE PROCEDURES pero quiero ver que tal es el Active Record

Lo digo todo por buenas practicas, ya que estamos trabajando un modulo de afiliados de un AFP
  #2 (permalink)  
Antiguo 24/01/2011, 10:55
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.538
Antigüedad: 8 años, 6 meses
Puntos: 2110
Respuesta: Active Record

Stored Procedures => Procedimientos almacenados en la base de datos que realizan una serie de tareas específicas (codificadas en SQL).

Active Record => Patrón de diseño que trata de encapsular una tabla de la base de datos en un objeto logico.

No es lo mismo ni parecido, si lo que tu quieres es prevenir el SQL Injection, usa Prepared Statements con una clase que lo implemente, como PDO. Lo puedes unir perfectamente a Active Record para hacer tus clases más seguras, pero de inicio, esa seguridad va en tu clase de acceso a la base de datos.
  #3 (permalink)  
Antiguo 24/01/2011, 10:56
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.684
Antigüedad: 9 años
Puntos: 887
Respuesta: Active Record

Te leiste la docu ?¿
http://codeigniter.com/user_guide/he...ty_helper.html
http://codeigniter.com/user_guide/libraries/input.html

Solo trabajo con Mysql, asi que no te sabria decir si Store procedure se "implemente" de distinta o igual manera en otros DBMS. Y eso no tiene que ver con la seguridad.
La clase Active record de CI es bastante básica(eso no le quita seguridad). Recuerda que la idea es mantenerlo simple y accesible. Para eso existen otros ORM que puedes usar tranquilamente en CI.
__________________
Drupal Argentina
  #4 (permalink)  
Antiguo 26/01/2011, 08:23
Avatar de CodeIgniter  
Fecha de Ingreso: enero-2011
Ubicación: $this->load->view('Rafaela', 'Argentina')
Mensajes: 45
Antigüedad: 3 años, 10 meses
Puntos: 14
Respuesta: Active Record

Active Record tiene protección contra los ataques de inyección sql (según lei, escapa las comillas y así se evita la ejecución de consultas sql no deseadas).

Ambas formas tienen su Pros y Contras. En el caso de Active Record la gran ventaja es que es muy sencillo de utilizar, se requiere mínimos conocimientos en sql. Con Store Procedure las consultas tenés que hacerlas "a pata" (manual, quiero decir) y aquí si necesitas conocimientos avanzandos en armado de consultas sql.

Yo utilizo y recomiendo Active Record. Pero no descarto que en algunos proyectos específicos pueda llegar a ser mejor Store Procedure....

Saludos.-
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 19:32.
SEO by vBSEO 3.3.2