sql >> Database >  >> RDS >> Sqlserver

Hoe voorkomt SQLParameter SQL-injectie?

Kortom, wanneer u een SQLCommand . uitvoert met behulp van SQLParameters , worden de parameters nooit rechtstreeks in de instructie ingevoegd. In plaats daarvan een door het systeem opgeslagen procedure genaamd sp_executesql wordt aangeroepen en krijgt de SQL-tekenreeks en de reeks parameters.

Als ze als zodanig worden gebruikt, worden de parameters geïsoleerd en behandeld als gegevens, in plaats van dat ze uit de verklaring moeten worden geparseerd (en dus mogelijk moeten worden gewijzigd), dus wat de parameters bevatten, kan nooit worden "uitgevoerd". Je krijgt alleen een grote fout dat de parameterwaarde op de een of andere manier ongeldig is.



  1. Hoe SQL Server Hiërarchie-ID te gebruiken via eenvoudige voorbeelden

  2. De standaardtaal instellen voor alle nieuwe aanmeldingen in SQL Server (T-SQL)

  3. Is er een LastIndexOf in SQL Server?

  4. Query's uitvoeren in meerdere databases op dezelfde server