sql >> Base de Datos >  >> RDS >> Mysql

¿Dónde debo guardar las credenciales de mi base de datos?

En primer lugar, debe tener en cuenta que haga lo que haga, si un atacante obtiene acceso a los archivos de su servidor, podrá robar la contraseña.

Si usa la fuente de datos de un servidor de aplicaciones, simplemente mueva la ubicación de la contraseña de texto sin formato a un archivo diferente.

Si usa alguna forma de cifrado para evitar almacenar una contraseña de texto sin formato, su aplicación aún tendrá que descifrarla con otra contraseña que ya tendrá. Si un atacante hace todo lo posible para obtener acceso a su sistema, puede estar bastante seguro de que él también lo sabrá. Lo que está haciendo es ofuscar (y obtener una falsa sensación de seguridad) en lugar de asegurarlo.

Una solución más segura es que un usuario proporcione la contraseña (o una contraseña para descifrar la contraseña de la base de datos) durante el inicio de su aplicación, pero eso dificultará mucho la administración. Y si ya está paranoico (del tipo de buena seguridad, no del tipo loco) de que alguien tenga acceso a su servidor, debe considerar que la contraseña de la base de datos residirá en la memoria del sistema.

Aparte de eso, mantenga su contraseña en su archivo de configuración (que puede estar bastante seguro de que el servidor no mostrará al mundo exterior), bloquee su sistema y otorgue al usuario de la base de datos solo los permisos mínimos necesarios.