Pregunta

Estoy construyendo una aplicación que almacenará algunos de nuestros datos de clientes, cosas como nombres de usuario / contraseñas, información que necesitamos para recordar y mantener segura.

¿Cuál es el mejor método para almacenar esta información de forma segura?

¿Fue útil?

Solución

una pregunta tan abierta y no hay mucho de detalle para seguir adelante. Me gustaría sugerir la lectura de Chris Shiflett excelente " esencial Seguridad en PHP " antes de ir más lejos. Es corto, al punto y muy práctico.

También hay una cantidad razonable de los consejos disponibles en la página web del libro también en http://phpsecurity.org/

Otros consejos

Devlounge tiene un muy buen artículo sobre la seguridad.

http://www.devlounge.net/code/php-security

Uso de un marco para la seguridad de PHP

Si desea obtener una configuración de seguridad de PHP rápidamente sin tener que hacer un montón de investigación, un marco PHP sería una buena idea.

Soy un fan de CodeIgniter pero otras opciones incluyen CakePHP y Zend .

El uso de un marco para la seguridad significará se obtiene un método probado de inmediato, sin embargo, puede haber algo de tiempo y esfuerzo necesario para aprender el marco.

Un total de href="http://en.wikipedia.org/wiki/List_of_web_application_frameworks" de marcos de PHP se puede encontrar en Wikipedia .

Muy simple en realidad. Establecer una base de datos MySQL rápida, y una tabla de usuario. En esa mesa usuario, almacenar los nombres de usuario en una columna y una versión hash de la contraseña en otra columna.

A medida de seguridad adicional, me gusta generar una cadena de 8 caracteres aleatorios y tienda que a su vez en cada fila - Me llamo que la columna "código clave". Cuando el usuario inicia sesión con un correcto nombre de usuario / contraseña, que almacenan su autentificación en variables de sesión, así como el juego "Código clave".

De este modo, la autenticación de sesión no sólo puede buscar la derecha nombre de usuario / contraseña, pero rápidamente consultar la base de datos, y comprobar para ver si el "Código clave" almacenado en la variable de sesión es el mismo que el código clave en la fila.

Funciona bien porque ni siquiera el usuario conoce su código clave.

En cuanto a las contraseñas van debería almacenar un hash de la contraseña. Cada vez que se autentifique al usuario, que hash de la contraseña introducida y comparar el resultado con lo que ha almacenado. De esta manera no está almacenando la contraseña real.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top