Conozco la regla: nunca cifre su contraseña, y he visto esta pregunta here que explica qué hacer con Java y mySQL, pero no sé qué hacer con PHP y mySQL.¿Cómo puedo proteger una cadena de conexión mySQL en PHP?
La cadena de conexión actual se hizo así
<?PHP
$DBName = "dbName";
$Host = "localhost";
$User = "dbUser";
$Password = "Yikes_hardcoded_PW";
$Link = mysql_connect($Host , $User , $Password , $DBName);
if (!$Link) {
die('Could not connect: ' . mysql_error());
}
?>
- , pero tengo que tener la contraseña asegurado, es decir, no hardcoded en este archivo. ¿Cómo lo hago?
EDIT: Para todos los downvotes que consiguen en esto, todavía no han recibido una respuesta a la pregunta que se trata de un problema de seguridad genuina - contraseñas codificadas. No es útil votar por una pregunta genuina sin publicar un comentario o respuesta que cumpla con la pregunta.
bien, no ponga una contraseña en el código. Si es de código abierto, nadie necesita la contraseña de todos modos –
póngalo en un archivo de configuración separado e ignórelo en GIT – Bogdan
Puede poner la contraseña en un archivo separado como Bogdan sugerido y gitignore para fines de desarrollo. Para el desarrollo, en realidad podría ser más fácil simplemente mantener la contraseña en dsn. El camino que tomes depende de tu nivel de comodidad. Para la producción, guarde las contraseñas en el cuadro de producción donde se ejecutará su código. Restrinja el acceso a la caja y administre las contraseñas establecidas/restablecidas a través de chef, marioneta, tela, etc. – dminer