Foros del Web » Programando para Internet » PHP »

seguridad y mysqli_connect

Estas en el tema de seguridad y mysqli_connect en el foro de PHP en Foros del Web. Buenas, Estoy empezando con esto de la programación en PHP+MySQL y me ha surgido una duda. La función mysqli_connect recibe, entre otros, como argumento el ...
  #1 (permalink)  
Antiguo 18/08/2013, 07:39
 
Fecha de Ingreso: julio-2006
Ubicación: Barcelona
Mensajes: 244
Antigüedad: 17 años, 9 meses
Puntos: 32
Pregunta seguridad y mysqli_connect

Buenas,

Estoy empezando con esto de la programación en PHP+MySQL y me ha surgido una duda.

La función mysqli_connect recibe, entre otros, como argumento el password del usuario que quiere usar determinada base de datos. Pues bien, entiendo que no es muy seguro crear un código php donde salga la linea de código:

mysqli_connect( "host", "usuario", "mipassword", "basededatos" );

Cualquiera podría acceder a ese código php y conocer "usuario" y "mipassword". ¿No?

¿Como debería evitar estas situaciones, entonces? ¿Procedimientos almacenados?

Simplemente quería saber cual es la práctica correcta en estas situaciones. Aunque quizá, ciertamente, mi inexperiencia me ha evocado a soltar alguna barbaridad.

Un saludo y gracias!
  #2 (permalink)  
Antiguo 18/08/2013, 08:44
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: seguridad y mysqli_connect

Un procedimiento almacenado sólo funciona si ya te has conectado a la base, por lo que no aplica como solución.
Hay varias formas de resolver tu problema, pero dos son las más simples:
1) Si el usuario de la aplicación al mismo tiempo es un user único e individual de MySQL (lo óptimo), entonces que sea el user el que ingrese la password.
2) si usas un user común a diferentes conexiones en la aplicación, entonces no hardcodees esos datos. O los pones en el htaccess, o los pones en un archivo de configuración, o los ocultas de cualquier otra forma. Yo en ese caso incluso lo que guardaría sería una cadena encriptada o bien una clave y username no reconocibles. Nunca algo que se pueda descrubir.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: mysql, seguridad, sql
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 05:05.