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?

È stato utile?

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

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top