sql >> Databáze >  >> RDS >> Sqlserver

SqlParameter neumožňuje Název tabulky - další možnosti bez útoku sql injection?

Přejděte na bílou listinu. Může existovat pouze pevná sada možných stejně správné hodnoty pro název tabulky - alespoň v to doufám.

Pokud nemáte bílý seznam názvů tabulek, můžete začít bílým seznamem znaků - Pokud to omezíte na A-Z, a-z a 0-9 (vůbec žádná interpunkce), pak by to mělo odstranit mnoho starostí. (Samozřejmě to znamená, že nepodporujete tabulky s lichými názvy... ve skutečnosti zde neznáme vaše požadavky.)

Ale ne, nemůžete použít parametry pro názvy tabulek ani sloupců – pouze hodnoty. To je typicky případ databází; Nevzpomínám si, že bych viděl žádný, který viděl podpůrné parametry pro to. (Troufám si tvrdit, že nějaké jsou, samozřejmě...)



  1. Oracle - převod mnoha formátů data na jedno formátované datum

  2. Metodologie testování výkonu:Objevování nové cesty

  3. Dotazování dat spojením dvou tabulek ve dvou databázích na různých serverech

  4. Zjistěte, do kterého čtvrtletí v Oracle patří datum