Foros del Web » Programando para Internet » PHP »

Mejorar script de identificacion de usuarios

Estas en el tema de Mejorar script de identificacion de usuarios en el foro de PHP en Foros del Web. Hola, quiero hacer un script para la identificacion y registro de usuarios lo mas seguro posible, dejo aqui mi script de ingreso, y de registro ...
  #1 (permalink)  
Antiguo 13/02/2008, 04:09
 
Fecha de Ingreso: noviembre-2007
Mensajes: 264
Antigüedad: 16 años, 4 meses
Puntos: 0
Mejorar script de identificacion de usuarios

Hola, quiero hacer un script para la identificacion y registro de usuarios lo mas seguro posible, dejo aqui mi script de ingreso, y de registro para que opinen si le falta alguna funcion mas, si es suficiente segura.. etc. un saludo

SCRIPT DE REGISTRO
Código PHP:
// Elimina posibles espacios en blanco al principio y final de la cadena.
$user trim($_POST["user"]);
$pass trim($_POST["pass"]);
$pass2 trim($_POST["pass2"]);

// Convertir caracteres de html
$user htmlspecialchars($user);

if(empty(
$user) || empty($pass) || empty($pass2))
{
    echo 
"Por favor rellene todos los campos.";
    exit;
}
else
{
    if(
$pass <> $pass2)
    {
        echo 
"ERROR: La contraseña está escrita incorrectamente.";
        exit;
        
    }
    elseif(
strlen($pass)<4)
    {
        echo 
"La contraseña tiene que tener como mínimo 4 caracteres.";
        exit;
    }
    else
    {
        
    require 
"includes/bdconexion.php";
    
    
$query "SELECT * FROM `usuarios` WHERE name = '$user'";
    
$con mysql_query($query);
    
$num mysql_num_rows($con);
    
    
// Comprobar si el usuario esta ya registrado
    
if($num>0)
    {
        echo 
"El usuario escogido no esta disponible";
        exit;
    }
    else
    {
    
    
// Encriptar la contraseña por seguridad
    
$pass crypt($pass"semilla");
    
    
$query "insert into `usuarios` values ('$user', '$pass')";    
    
$con mysql_query($query);
    
    if(isset(
$con))
    {
        echo 
"Registro realizado correctamente";
    }
    else
    {
        echo 
"ERROR: No se pudo realizar el registro";
    }}}


ESCRIPT DE INGRESO

Código PHP:
session_start();

$user $_POST["user"];
$pass $_POST["pass"];

if(empty(
$user) || empty($pass))
{
    require 
"formulario.php";
    echo 
"ERROR: No ha rellenado correctamente los campos";
}
else
{
    require 
"includes/bdconexion.php";
    
    
// Encriptar la contraseña para hacer la consulta
    
$pass crypt($pass"semilla");
    
// Consulta a la base de datos
    
$query "SELECT count(*) FROM `usuarios` WHERE
            name = '$user' AND
            pass = '$pass'"
;


    
$res mysql_query($query);
    if(!isset(
$res))
    {
        echo 
"No se puedo llevar a cabo la comprobacion";
        exit;
    }
    

    
$count mysql_result($res,0,0);

    if (
$count>0)
    {
        
$_SESSION["user"]=$user;
        
header("location: miembros.php");
    }
    else
    {
      echo 
"<h1>Datos incorrectos</h1>";
      echo 
"No está autorizado para ver esta pagina.";
    }        


SECCION DE MIEMBROs
Código PHP:
session_start();

if(!isset(
$_SESSION["user"]))
{
    require 
"formulario.php";
}
else
{
    
echo 
"<h2>Area de miembros</h2>";
echo 
"Bienvenido ".$_SESSION["user"];


  #2 (permalink)  
Antiguo 13/02/2008, 05:29
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 6 meses
Puntos: 56
Re: Mejorar script de identificacion de usuarios

Aqui tienes una guía para mejorar un poco la seguridad:
http://www.pixelated-dreams.com/uplo...CheatSheet.pdf
y le puedes agregar un filtro a todos tus inputs con html purifier

__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
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




La zona horaria es GMT -6. Ahora son las 11:05.