Hola a todos,
estoy desarrollando una aplicación que va a interactuar con varios usuarios, por ello he decidido que tenga la "típica" identificación de usuario y contraseña. Esto es algo que nunca he hecho. He estado ojeando temas relacionados con la seguridad y tengo una serie de dudas a cerca de que debería utilizar y cómo:
1/Almacenar contraseñas encriptadas(MySql): utilizo la función SHA1(). Aquí no tengo ningún problema.
2/En todos los formularios que tengo para introducir datos, previamente tengo javascript para evitar problemas y en caso de que el usuario lo desactive, utilizo funciones de php que lo limpian y evitan p.ej: "SQL Injection"
3/Supongo que el formulario de identificación sólo tengo que comparar los datos de usuario y contraseña con los de la BD y mostrar el correspondiente mensaje.
4/¿Cómo se dan privilegios en MySql?
5/He leído que se puede utilizar SSL con MySql, para que las transacciones sean mas seguras. Pero no tengo ni idea de cómo se utiliza.
6/¿Cómo hago para qué MySql esté protegido por un cortafuegos?(No sé si lo estoy diciendo bién, mi desconocimiento de redes es bastante grande)
7/¿Debería encriptar los correos que mando? p.ej: con pgp
8/He descartado las copias de seguridad
9/Supongo que debería tener un fichero donde estan los datos de la conexión, fuera del arbol web.
Estos son aspectos que me he planteado en cuestiones de seguridad. Si me falta alguno os rogaría me dijeraís que lo tenga en cuenta y de las dudas planteadas, orientación de cómo resolverlas.
Gracias.