Recherche…


Meilleur entrainement

Limiter la racine (et tout autre utilisateur privilégié par SUPER) à

GRANT ... TO root@localhost ...

Cela empêche l'accès des autres serveurs. Vous devez distribuer SUPER à très peu de gens et ils doivent être conscients de leurs responsabilités. L'application ne doit pas avoir SUPER.

Limitez les connexions de l'application à la seule base de données utilisée:

GRANT ... ON dbname.* ...

De cette façon, quelqu'un qui pirate le code de l'application ne peut pas obtenir dbname. Cela peut être affiné par l'une de ces deux méthodes:

GRANT SELECT ON dname.* ...    -- "read only"
GRANT ... ON dname.tblname ... -- "just one table"

Le readonly peut aussi avoir besoin de choses "sûres" comme

GRANT SELECT, CREATE TEMPORARY TABLE ON dname.* ...    -- "read only"

Comme vous le dites, il n'y a pas de sécurité absolue. Mon point ici est que vous pouvez faire quelques choses pour ralentir les pirates. (Même chose pour les honnêtes gens qui font des bêtises.)

Dans de rares cas, il se peut que l’application doive faire quelque chose de disponible uniquement pour la racine. Cela peut être fait via une "procédure stockée" qui a SECURITY DEFINER (et root la définit). Cela exposera uniquement ce que fait le SP, ce qui pourrait, par exemple, être une action particulière sur une table particulière.

Hôte (de l'utilisateur @ hôte)

L'hôte peut être un nom d'hôte ou une adresse IP. En outre, il peut s'agir de jokers.

GRANT SELECT ON db.* TO sam@'my.domain.com' IDENTIFIED BY 'foo';

Exemples: Remarque: il faut généralement les citer

localhost -- the same machine as mysqld
'my.domain.com' -- a specific domain; this involves a lookup
'11.22.33.44' -- a specific IP address
'192.168.1.%' -- wild card for trailing part of IP address.  (192.168.% and 10.% and 11.% are "internal" ip addresses.)

Utiliser localhost repose sur la sécurité du serveur. Pour de meilleures pratiques, root ne devrait être autorisé que via localhost. Dans certains cas, cela signifie la même chose: 0.0.0.1 et ::1 .



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow