2011-10-18 16 views
25

Desidero sapere qual è la procedura migliore o cosa è consigliabile fare quando vengono create le variabili per le credenziali/host MySQL.Migliori pratiche per le credenziali di MySQL/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 o costanti dichiarate e forse può trovare ciò che sono il valore facilmente. Ho un codice che più utenti possono condividere e utilizzare.

Qual è il modo migliore per proteggere queste variabili?

risposta

31

Ecco alcune soluzioni

1) Si dà ad ogni utente un utente e una password e ogni utente ha le autorizzazioni nel database (solo selezionare o inserire ect ..). Quindi nel tuo codice includi semplicemente un file db.config.php in modo che tutte le variabili siano impostate. Non ha molta importanza se l'utente fa eco alle variabili poiché ne usano le proprie. .

2) si può dare un nome utente comune/pass per il database e quindi codificare il file (sia utilizzando custom encoding, ottimizzatore Zend o ioncube e disinserire le variabili Ecco un esempio di codice:

// 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) Ad un certo punto, qualcuno, in qualche modo sarà in grado di trovare queste informazioni. Raccomanderei semplicemente di fidarmi del tuo utente (supponendo che si tratti di sviluppatori)

+0

Il secondo sembra costoso per quello che devo fare, il terzo, beh non ancora;) ma mi piace il primo, molto facile e pulito. –

+0

Nessun problema, benvenuto –

1

Ad un certo punto del codice sarà necessario codificare questo tipo di informazioni, l'importante è mantenerlo in un solo posto per promuovere la manutenzione. Tuttavia, come si è preoccupati per la sicurezza vi consiglio di controllare questo: Convert PHP file to binary

Problemi correlati