sql >> Databáze >  >> RDS >> PostgreSQL

Jak bezpečně uniknout libovolným řetězcům pro SQL v PostgreSQL pomocí Java

Nejjednodušším způsobem by bylo použít Kótování v dolarech v kombinaci s malým náhodným tag:

  • Pro každé vyvolání vypočítejte malou, náhodnou značku (např. 4 znaky) (nadbytečné)
  • Podívejte se, zda je značka uvozovek součástí vstupního řetězce.
  • Pokud ano, přepočítejte novou náhodnou značku.
  • Jinak vytvořte svůj dotaz takto:

    $tag$inputString$tag$
    

Tímto způsobem se vyhnete všem potížím s různými vnořenými technikami citování a můžete také nastavit pohyblivý cíl pomocí náhodné značky.

V závislosti na vašich bezpečnostních požadavcích to může fungovat nebo ne. :-)



  1. sql server:vyberte řádky, jejichž součet odpovídá hodnotě

  2. použití regulárního výrazu v mysql

  3. MySQL/PHP:Jak získat sloupce a související data

  4. Vytvořit zobrazení SQLite