MySQL credenziali / hosts variabili best practice
-
26-10-2019 - |
Domanda
Vorrei sapere qual è la migliore pratica o ciò che è raccomandato da fare quando si creano un variabili per MySQL credenziali / host.
define('HOST', 'localhost');
// etc..
mysql_connect(HOST, // etc...
vs
$host = 'localhost';
// etc..
mysql_connect($host, // etc...
Per entrambi si può facilmente verificare quali sono le variabili dichiarate o costanti e forse può trovare ciò sono il valore facilmente. Ho codice che più utenti possono condividere e utilizzare.
Qual è il modo migliore per proteggere queste variabili?
Soluzione
Ecco alcune soluzioni
1) dare ad ogni utente un utente e una password e ogni utente ha le autorizzazioni nel database (solo selezionare, o si inserisce ect ..). Quindi, nel codice di includere semplicemente un db.config.php modo tutte le variabili sono impostate. E 'davvero non importa se l'utente eco le variabili dal momento che utilizzano il proprio.
2) è possibile dare un nome utente comune / pass per il database e quindi codificare il file (sia utilizzando personalizzato codifica , ottimizzatore Zend o ioncube e disinserire le variabili Ecco un codice di esempio:.
// file mysql_connect.php
$link = mysql_connect("localhost", "mysql_user", "mysql_password")
or die("cannot connect to database : " . mysql_error());
// then this file is encoded so nobody can view it.
3) A un certo punto, qualcuno, in qualche modo sarà in grado di trovare queste informazioni. Vorrei semplicemente raccomandare a fidarti del tuo utente (presupponendo che siano gli sviluppatori)
Altri suggerimenti
A un certo punto nel codice si dovrà codificare questo tipo di informazioni, la cosa importante è quello di mantenere in un solo posto per la promozione mantenibilità. Tuttavia, come si sono preoccupati per la sicurezza vi consiglio di controllare questo: a binario