Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 04-01-2010
Avatar de Julián
Julián Julián is offline
Merodeador
 
Registrado: may 2003
Ubicación: en mi casa
Posts: 2.029
Poder: 10
Julián Va por buen camino
Jau!

Cita:
Empezado por hibero Ver Mensaje
¿es suficiente el uso de una consulta parametrica para evitar SQLInjection?
Pues no lo sé por que no las uso ni creo que lo vaya a hacer en el futuro, pero sin saberlo, me apostaría mi pijama de Chuck Norris a que no.

Debes comprobar que los valores recibidos en $_GET son válidos y no contienen cosas raras como código que pueda servir para hacer sql injecting o ataques xss. Es decir, antes de ejecutar el SELECT nos aseguramos de que las variables usuario y password contienen unicamente letras y dígitos, por ejemplo, y que no tengan caracteres como <,#,?,",', etc.
Para esto lo mejor sería usar un script de probada eficacia como Kses o PHPIDS.

Cita:
Empezado por hibero Ver Mensaje
¿Qué se puede mejorar?
La lógica que usas es "si el user no está autentificado no lo dejo entrar". Creo que sería mejor "Le dejo entrar si está autentificado". Es decir, que la opción por omisión debería ser no dejar entrar, pues si de alguna forma alguien consigue anular lo que hubiera en seguridad.php, por ejemplo sustituyendo dicho archivo no podría ir a ningún sitio. No se si este punto me ha quedado claro.

Cita:
Empezado por hibero Ver Mensaje
¿Qúe incluiriais?
El funcionamiento de seguridad.php debería ser el siguiente:
session_start;
if ($autentificado)
include('user.php');
else
include(login.php);

Teniendo en user.php el típico código que pone "hola fulanito" con los enlaces o botones para cerrar sesión, ver perfil, etc. Y en login.php el form con los inputs para user y password y si acaso otro botón o enlace para "recordar contraseña"

Ademas de eso en cada página, despues del seguridad.php deberias permitir unas cosas u otras en función de los derechos de acceso del uaurio, para lo cual deberías disponer de un sistema de permisos, con usuarios, roles, grupos, etc.

Lo del nombre de la variable logueado no le veo mucho sentido. En mis scripts dicha variable es booleana. Claro, que un usuario, además de poder tener true o false en "logueado" tambien tiene otra variable "userlevel" que le permite mas o menos privilegios. O sea, que un user con "logueado==true" cuyo userlevel sea el "level por omisión" es practicamente un "invitado" y poco puede hacer hasta que no se le hayan otorgado derechos de acceso a alguna parte o adjudicado algún rol o adscrito a algún grupo.

Cita:
Empezado por hibero Ver Mensaje
¿Hay una forma de permitir sólamente 3 intentos?. Se me ocurre que agregando un nuevo campo en la base de datos numfallos, fecha,hora y que desde que se llegue a un número de fallos predeterminado que se bloquee durante un periodo de tiempo determinado desde fecha hora el usuario podría ser una mejora para eviar que alguien utilice un programa para hacer tropocientos intentos
Lo de los intentos y el ampliar el tiempo entre ellos me parece cosa obligada y yo lo que hago es guardar los intentos asociados a la dirección IP, la cual, puedo llegar a meter en un filtro si hace falta.



Gueno, menudo rollo he largao, XDD
__________________
"la única iglesia que ilumina es la que arde"
Anonimo

Última edición por Julián fecha: 04-01-2010 a las 12:27:35.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Pronunciación correcta. marcoszorrilla La Taberna 1 12-11-2008 21:38:25
Cual es la forma correcta de llamar y ejecutar un ProcAlmacenado en IB6 y Delphi 7??? Saltamontes Firebird e Interbase 5 11-07-2007 17:05:19
Cómo utilizar consultas con DISTINCT de forma correcta dec MySQL 9 19-09-2006 17:50:47
Cual es la Forma Correcta de Guardar Texto en un IbDataset con TcpServer???? AGAG4 Varios 0 10-12-2004 22:14:41
Forma correcta de emigrar base de datos.. ronimaxh Firebird e Interbase 5 07-04-2004 23:34:38


La franja horaria es GMT +2. Ahora son las 14:10:10.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi