Muchos sitios utilizan una páginas web basados en PHP para acceder a la información almacenada en una base de datos MySQL , como los sitios de comercio electrónico o tablones de anuncios . Ningún sistema de seguridad es perfecto. Sin embargo , al crear un sitio web que utiliza PHP y MySQL formulario de acceso , incluye características de seguridad, a partir de las cuentas de usuario a la encriptación de información en los registros de intentos de inicio de sesión. Esto no sólo ayuda a prevenir los ataques en línea , pero también puede ayudar a mejorar la seguridad de su uso de notas detalladas si es que su sitio ha sido hackeado . Usuario y contraseñas
Muchas empresas están exigiendo cuentas de usuarios que tengan contraseñas "fuertes" . La definición de una contraseña segura es variable, pero generalmente incluye una combinación de letras mayúsculas y minúsculas , valores numéricos y caracteres especiales. Esto hace que sea difícil de adivinar contraseñas. Cuando un usuario intenta acceder a su base de datos MySQL a través de un formulario PHP y falla, no ser específico acerca de la razón por la que fracasaron. Simplemente decirle al usuario que la sesión no tuvo éxito. De esta manera usted no está dando información extra a posibles piratas informáticos .
Data Encryption
Si usted mantiene una base de datos con la información de acceso del usuario, asegúrese de cifrar los datos. Dejando nombres de usuario y contraseñas sin cifrar es arriesgado, sobre todo si una persona no autorizada gana acceso a su base de datos. PHP tiene una función llamada " sha1 () ", que convierte una cadena como una contraseña a su valor hash SHA-1 . Guardar este valor en MySQL. Cuando un usuario intenta iniciar sesión a través de PHP , puede utilizar el sha1 () para convertir la contraseña a SHA -1 y comparar su valor con el que está en la base de datos . Los piratas informáticos que acceden a la base de datos no se verán los mismos passwords reales.
PHP Funciones
manejar errores de PHP de una manera que mantenga la información al usuario en un mínimo. Por ejemplo, use el símbolo " @" antes de la función PHP llamadas, así como la función "die ()" - por ejemplo, " @ mysql_connect (... ) or die ( " No se pudo conectar "); " - por lo que si esa función no se puede ejecutar por alguna razón , el usuario ve un mensaje de error que desea que vean , no una que proporciona más información que él necesita saber . Además, cuando la transmisión de información como nombres de usuario y contraseñas de una página PHP a otra, utilice la función de PHP "$ _POST " para mantener la información invisible para el usuario en lugar de la función "$ _GET ", que lo muestra en la barra de direcciones .
MySQL registros
al supervisar la información de acceso , el mantenimiento de registros de datos se puede recorrer un largo camino en el seguimiento de las cuestiones de seguridad y ayudar a indicar los agujeros . Cuanta más información se conecte , mejor que pueda corregir los problemas . Como mínimo, el seguimiento del número de veces que una persona se conecta a un sistema y acabar por lo menos el último registro en el intento con la fecha y la hora, y guardar esta información en una tabla MySQL. Restringir el acceso a sus registros , así , lo que limita el número de personas que pueden ver o modificar.