par
devlop78 » 10 avr. 2011, 04:41
Si le critère de sécurité est important, alors avoir plusieurs utilisateurs est important.
Un schéma de base est souvent :
- 1 utilisateur qui peut modifier les schémas
- 1 utilisateur qui peut modifier les données
Mais on peut aller plus loin ...
On peut imaginer
- Un utilisateur "root" (pas celui de mysql :p) qui peut tout faire (toi). Lui, jamais PHP ne l'utilise. Jamais ...
- Un utilisateur éventuellement qui gère la structure (mais en général, c'est toi).
- Un utilisateur pour une application spécifique avec les droits strictes. Par exemple : il a besoin juste de lire des tables ou des vues ? Alors, tu ne le lui donnes que cette autorisation.
Bon, cela dit ... c'est relatif. Si on arrive à supprimer toutes les données, c'est assez peu important si on supprime les tables avec ... Mais au moins que l'on ne puisse pas faire plus, comme augmenter le cache de RAM, ou des choses qui mettrait le serveur en péril, et permettrait des attaques des autres services ... Mais là .. il faudrait avoir le droit de "root" mysql pour ça, je pense.
Donc, en gros : le moins de privilèges possible. Si ton application désactives des choses plutot que de les supprimer : interdis lui de supprimer.
Si le critère de sécurité est important, alors avoir plusieurs utilisateurs est important.
Un schéma de base est souvent :
- 1 utilisateur qui peut modifier les schémas
- 1 utilisateur qui peut modifier les données
Mais on peut aller plus loin ...
On peut imaginer
- Un utilisateur "root" (pas celui de mysql :p) qui peut tout faire (toi). Lui, jamais PHP ne l'utilise. Jamais ...
- Un utilisateur éventuellement qui gère la structure (mais en général, c'est toi).
- Un utilisateur pour une application spécifique avec les droits strictes. Par exemple : il a besoin juste de lire des tables ou des vues ? Alors, tu ne le lui donnes que cette autorisation.
Bon, cela dit ... c'est relatif. Si on arrive à supprimer toutes les données, c'est assez peu important si on supprime les tables avec ... Mais au moins que l'on ne puisse pas faire plus, comme augmenter le cache de RAM, ou des choses qui mettrait le serveur en péril, et permettrait des attaques des autres services ... Mais là .. il faudrait avoir le droit de "root" mysql pour ça, je pense.
Donc, en gros : le moins de privilèges possible. Si ton application désactives des choses plutot que de les supprimer : interdis lui de supprimer.