2009-02-25 11 views
0

J'ai utilisé PHP pour me connecter à MySQL. J'ai un include où je mets des informations de base de données, informations de connexion, etc et je l'ai inclus étaient nécessaires. Qu'est-ce qui empêche quelqu'un d'explorer mon site, trouver cela inclure et se connecter à ma base de données? Je limite généralement à quelques privs dans MySQL, par exemple un utilisateur qui peut simplement insérer/mettre à jour des données. mais j'ai un administrateur qui a le contrôle total.Sécurité PHP et MySQL

Quelle est la meilleure pratique ici pour protéger mes informations de connexion?

Merci,

-Jason

Répondre

13

Conserver l'inclure dans un dossier pas dans Webroot. Dans le cas où quelqu'un obtient l'accès au serveur web à votre site et peut voir le PHP dans le système de fichiers, les détails inclus et sensibles ne sont pas dans la racine web. Beaucoup de hacks ne peuvent accéder qu'à l'emplacement des sites. Assurez-vous que votre répertoire source PHP n'est pas là.

1

Qu'est-ce que vous utilisez pour un serveur Web? Si son Apache ou similaire, vous pouvez placer l'information DB en dehors de la racine du document.

1

Si votre serveur est configuré correctement, le code PHP est exécuté par PHP et seule la sortie est envoyée au navigateur, pas le code source lui-même. Ainsi, la navigation/exploration de votre site Web ne révélerait jamais le contenu des fichiers PHP, c'est-à-dire les informations d'identification de la base de données.

Bien sûr, si votre serveur est et non configuré correctement, cela n'a pas besoin d'être vrai. (mais dans ce cas, vous devriez le réparer!)