Question

  1. Je l'ai utilisé le numéro de requête paramétrées fois je sais que cela aide à prévenir l'injection SQL. Mais, je me demandais si je peux savoir ce qui fonctionne logique de base dans une requête paramétrées pour prévenir l'injection SQL peut être il est très simple mais je ne sais pas. J'ai essayé de recherche Google ce sont les base de celui-ci, mais chaque fois que je trouve un exemple comment utiliser la requête paramétrés dans Asp.net.
  2. Je sais de faire une classe spéciale qui arrête les caractères spéciaux tels que ( », - etc) qui sont utilisés dans l'injection SQL, mais n'arrêtant que des caractères spéciaux empêcher totalement l'injection SQL
  3. ?
  4. Et une dernière chose ne .net paramétrés requête peut arrêter complètement l'injection SQL?
Était-ce utile?

La solution

Je pense que les requêtes paramétrées ne dépendent pas de support de base de données de requêtes préparées. pilote de base de données des valeurs passant lui-même la façon sûre, et comment est-il fait dépend de pilote lui-même.

Le manuel PostgreSQL explique notions de base sur les requêtes paramétrées sur la base de données niveau.

D'autre part, les requêtes paramétrées Simplifie vous en passant locale des données sensibles. Par exemple, l'utilisateur entre 100,00 décimal, mais votre serveur attend 100,00 valeur.

Autres conseils

Dans tous les moteurs de base de données que je sais, en utilisant « préparé » (alias « paramétrés » ou « statique ») requêtes SQL empêche l'injection. Vous n'avez pas besoin de filtrer tous les caractères s'ils sont passés aux paramètres. Si jamais vous écrivez SQL qui est concaténés dans le code plutôt que préparé avec des paramètres, vous êtes probablement à risque d'injection SQL. Vous devriez le manuel de sécurité pour la base de données que vous utilisez, il aura très probablement une section sur l'injection SQL, mais il suffit de lire tout cela. Je parie que cela prendra moins d'une heure et vous donnera un enseignement solide et la confiance que vous suivez les meilleures pratiques applicables à votre base de données.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top