Foros del Web » Programando para Internet » PHP »

Duda en almacenamiento de password

Estas en el tema de Duda en almacenamiento de password en el foro de PHP en Foros del Web. Hola amigos!! Tengo una web en la que quiero hacer un pequeño modulo de administrador para el cliente en el que podrá modicar unas pequeñas ...
  #1 (permalink)  
Antiguo 20/12/2011, 10:27
 
Fecha de Ingreso: septiembre-2010
Mensajes: 79
Antigüedad: 14 años, 3 meses
Puntos: 1
Duda en almacenamiento de password

Hola amigos!!

Tengo una web en la que quiero hacer un pequeño modulo de administrador para el cliente en el que podrá modicar unas pequeñas partes de la web por su cuenta.
El tema es que para acceder a este modulo de administracion quiero poner un nombre de usuario y contraseña, pero quiero hacerlo de manera que pueda guardar estos datos como variables PHP. Pero conforme lo tengo montado el usuario no puede modificar el password si asi lo desea porque cada vez q accede las variables se inicializan con los valores por defecto. Os muestro el codigo:

<?php
$administrador = "administrador";
$pass="password";

function cambiarPassword($oldPass, $newPass, $confirmNewPass)
{
global $pass;
if($newPass == $confirmNewPass)
{
if($oldPass == $pass)
{
$pass = $newPass;
}
}
}
//Podremos modificar el pass xo si se vuelve a ejecutar este archivo las variables volveran a tener los valores $administrador = "administrador" y pass="password";

Espero vuestra ayuda.
Muchas gracias!!
?>
  #2 (permalink)  
Antiguo 20/12/2011, 10:45
Avatar de azimutisima  
Fecha de Ingreso: mayo-2011
Mensajes: 107
Antigüedad: 13 años, 6 meses
Puntos: 14
Respuesta: Duda en almacenamiento de password

Si no lo guardas en base de datos o en algun sitio cada vez que lo cambie el usuario y se desconecte se perderá el valor, como bien te has dado cuenta. No hay más TIENES que almacenar la nueva pass en algun sitio. El normal es encriptada en el propio registro del usuario.
__________________
Si te gusto mi respuesta anímame a continuar dandome un voto.
  #3 (permalink)  
Antiguo 20/12/2011, 10:47
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 14 años, 4 meses
Puntos: 67
Respuesta: Duda en almacenamiento de password

tienes $administrador y $pass quemado en tu código???
__________________
Páginas web de alta calidad y hechas a la medida.
  #4 (permalink)  
Antiguo 20/12/2011, 10:49
 
Fecha de Ingreso: enero-2004
Ubicación: Medellin
Mensajes: 178
Antigüedad: 20 años, 11 meses
Puntos: 8
Respuesta: Duda en almacenamiento de password

Estas guardando la contraseña en un archivo?, si es asi te toca reescribir el archivo con el nuevo valor, ideal es encriptar la clave ya sea con md5 o sha1.
  #5 (permalink)  
Antiguo 21/12/2011, 11:22
 
Fecha de Ingreso: septiembre-2010
Mensajes: 79
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Duda en almacenamiento de password

el_quick, No entiendo tu pregunta..

Mi duda era si se podia hacer d otra manera ya que crear una bd para eso me parece excesivo.. No hay otra forma de hacerlo sin tener que utilizar una bd simplemente para un registro??

Gracias por vuestras aportaciones!!
Saludos
  #6 (permalink)  
Antiguo 21/12/2011, 11:41
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 14 años, 4 meses
Puntos: 67
Respuesta: Duda en almacenamiento de password

Ok, si solo vas a utilizar 1 registro sigue siendo lo más recomendable usar BD, por seguridad, estabilidad, expansibilidad (existe esta palabra :/ ), etc...

pero si sigues con la idea....

Código PHP:
Ver original
  1. <?php
  2.     // Crea un archivo llamado datos_login.php (por ejemplo) y sustituye las siguientes dos líneas por un include a ese archvio
  3.     /*
  4.     $administrador = "administrador";
  5.     $pass="password";
  6.     */
  7.     include('datos_login.php'); // que quede así.
  8.  
  9.     function cambiarPassword($oldPass, $newPass, $confirmNewPass)
  10.     {
  11.         global $pass;
  12.         if($newPass == $confirmNewPass){
  13.             if($oldPass == $pass){
  14.                 // Reescribe aquí el archivo datos_login.php
  15.                 // para esto estudia http://php.net/manual/es/function.fwrite.php
  16.                 $pass = $newPass;
  17.             }
  18.         }
  19.     }
  20. ?>

Te recomiendo usar md5 para encriptar tu password, eso aumentará la seguridad de tu contraseña.
__________________
Páginas web de alta calidad y hechas a la medida.
  #7 (permalink)  
Antiguo 22/12/2011, 03:21
 
Fecha de Ingreso: septiembre-2010
Mensajes: 79
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Duda en almacenamiento de password

Muchas gracias el_quick!
  #8 (permalink)  
Antiguo 22/12/2011, 03:57
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años, 8 meses
Puntos: 326
Respuesta: Duda en almacenamiento de password

Cita:
Iniciado por el_quick Ver Mensaje
Ok, si solo vas a utilizar 1 registro sigue siendo lo más recomendable usar BD, por seguridad, estabilidad, expansibilidad (existe esta palabra :/ ), etc...

pero si sigues con la idea....

Código PHP:
Ver original
  1. <?php
  2.     // Crea un archivo llamado datos_login.php (por ejemplo) y sustituye las siguientes dos líneas por un include a ese archvio
  3.     /*
  4.     $administrador = "administrador";
  5.     $pass="password";
  6.     */
  7.     include('datos_login.php'); // que quede así.
  8.  
  9.     function cambiarPassword($oldPass, $newPass, $confirmNewPass)
  10.     {
  11.         global $pass;
  12.         if($newPass == $confirmNewPass){
  13.             if($oldPass == $pass){
  14.                 // Reescribe aquí el archivo datos_login.php
  15.                 // para esto estudia http://php.net/manual/es/function.fwrite.php
  16.                 $pass = $newPass;
  17.             }
  18.         }
  19.     }
  20. ?>

Te recomiendo usar md5 para encriptar tu password, eso aumentará la seguridad de tu contraseña.
Con md5 sólo no haces nada xD
__________________
>> Eleazan's Source
>> @Eleazan
  #9 (permalink)  
Antiguo 22/12/2011, 07:51
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 14 años, 4 meses
Puntos: 67
Respuesta: Duda en almacenamiento de password

:O!!!! que viejo estoy... jajaja, en mis tiempos de juventud la única forma de desencriptar md5 era con fuerza bruta y ahora hasta hay sitios que lo hacen... :/

Ok, combina el md5 con algo más...

Saludos!
__________________
Páginas web de alta calidad y hechas a la medida.
  #10 (permalink)  
Antiguo 22/12/2011, 07:56
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años, 8 meses
Puntos: 326
Respuesta: Duda en almacenamiento de password

Cita:
Iniciado por el_quick Ver Mensaje
:O!!!! que viejo estoy... jajaja, en mis tiempos de juventud la única forma de desencriptar md5 era con fuerza bruta y ahora hasta hay sitios que lo hacen... :/

Ok, combina el md5 con algo más...

Saludos!
Sí. Google lo hace. Busca el hash en google... y... ¡tachán! xDD
__________________
>> Eleazan's Source
>> @Eleazan
  #11 (permalink)  
Antiguo 27/12/2011, 03:22
 
Fecha de Ingreso: septiembre-2010
Mensajes: 79
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Duda en almacenamiento de password

Entonces con que lo puedo combinar?? Gracias por avisar porque ya iba a ponerme...
  #12 (permalink)  
Antiguo 27/12/2011, 03:41
Avatar de fishdesign  
Fecha de Ingreso: abril-2011
Ubicación: Málaga
Mensajes: 389
Antigüedad: 13 años, 8 meses
Puntos: 95
Respuesta: Duda en almacenamiento de password

Cita:
Iniciado por vorox Ver Mensaje
Entonces con que lo puedo combinar?? Gracias por avisar porque ya iba a ponerme...
Create un crypter propio, encripta varias veces con md5 y sha1 un string en base64 o utiliza algún algoritmo con clave
http://www.php.net/manual/es/functio...pt-encrypt.php

También puedes crearte un propio hash para añadirle al pass: Es decir, en vez de pasarle el md5 a la contraseña "pepe", haces algo como "faj8f9aja9fja094fja0-pepe"

Un saludo
__________________
Web Designer.
Themes-Up!, próximamente

Última edición por fishdesign; 27/12/2011 a las 03:56

Etiquetas: almacenamiento, password, variables, usuarios
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 03:51.