Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Proteger un campo de poder leerlo

Estas en el tema de Proteger un campo de poder leerlo en el foro de Bases de Datos General en Foros del Web. Es una pregunta un poco conceptual, que no se si es posible. Eres el programador de una web clásica con registro de usuarios, y gestionas ...
  #1 (permalink)  
Antiguo 26/08/2010, 05:30
 
Fecha de Ingreso: abril-2009
Mensajes: 48
Antigüedad: 15 años, 7 meses
Puntos: 5
Proteger un campo de poder leerlo

Es una pregunta un poco conceptual, que no se si es posible.

Eres el programador de una web clásica con registro de usuarios, y gestionas tu base de datos mysql con phpmyadmin por ejemplo.

Se podría proteger el campo contraseña de la tabla usuarios para que ni yo mismo, el programador al entrar en phpmyadmin, pueda leer la contraseña.

No sé si es posible, porque evidentemente la web debe tener permisos de escritura y lectura en esa tabla, y alguien debe crear el usuario de acceso a la BD que use la web, por lo que esa persona puede acceder a la BD, no lo sé.

Muchas gracias por la ayuda.

Mario
  #2 (permalink)  
Antiguo 26/08/2010, 05:46
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 17 años, 1 mes
Puntos: 85
Respuesta: Proteger un campo de poder leerlo

Proteger la información de la base de datos contra amenazas internas es una de las nuevas características que los productores de software están intentando implementar, por ejemplo en Oracle existe Database Vault, esto es, darle a un DBA privilegios para administrar pero no para acceder a la información.

MySQL no tiene nada similar, un usuario con privilegios elevados siempre podrá asignarse los permisos necesarios para acceder a la información.

Para el caso de las contraseñas, no tendrás más opción que utilizar algún mecanismo de encriptación.

Saludos

Última edición por matanga; 26/08/2010 a las 06:43
  #3 (permalink)  
Antiguo 26/08/2010, 17:18
 
Fecha de Ingreso: enero-2008
Ubicación: La Plata
Mensajes: 136
Antigüedad: 16 años, 10 meses
Puntos: 3
Respuesta: Proteger un campo de poder leerlo

Lo que se hace en el caso de información sensible como la contraseña, es encriptarla con un sistema que no sea desencriptable, por ejemplo crypt() http://www.functions-online.com/crypt.html, lo que haces es encriptar la pass una vez que la envian (en el registro de usuarios) y después cuando quieren loguear le pasas un crypt() al POST y los comparas.
__________________
Descargas
  #4 (permalink)  
Antiguo 26/08/2010, 22:17
 
Fecha de Ingreso: agosto-2010
Ubicación: santiago, CHILE
Mensajes: 564
Antigüedad: 14 años, 3 meses
Puntos: 9
Respuesta: Proteger un campo de poder leerlo

//...con un trigger...ojala sea eso...me dio paja leer too el post
  #5 (permalink)  
Antiguo 27/08/2010, 04:57
 
Fecha de Ingreso: abril-2009
Mensajes: 48
Antigüedad: 15 años, 7 meses
Puntos: 5
Respuesta: Proteger un campo de poder leerlo

Cita:
Iniciado por manchilp Ver Mensaje
Lo que se hace en el caso de información sensible como la contraseña, es encriptarla con un sistema que no sea desencriptable, por ejemplo crypt() [URL="http://www.functions-online.com/crypt.html"]http://www.functions-online.com/crypt.html[/URL], lo que haces es encriptar la pass una vez que la envian (en el registro de usuarios) y después cuando quieren loguear le pasas un crypt() al POST y los comparas.
Muchas gracias a todos,

Esta parece una opción bastante adecuada, siendo una algoritmo de encriptación que trabaja en un solo sentido, haciendo que solo puedas llegar a ver las contraseñas ya codificadas y nunca las sin codificar.

Dejo aquí un ejemplo de uso, por si a alguien más le interesa:


Código PHP:
$password crypt('mypassword'); // let the salt be automatically generated

/* You should pass the entire results of crypt() as the salt for comparing a
   password, to avoid problems when different hashing algorithms are used. (As
   it says above, standard DES-based password hashing uses a 2-character salt,
   but MD5-based hashing uses 12.) */
if (crypt($user_input$password) == $password) {
   echo 
"Password verified!";


Muchas gracias a todos otra vez por la ayuda

Etiquetas: poder, proteger, campos
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 23:18.