sql >> データベース >  >> RDS >> PostgreSQL

外部クライアントから提供された任意のJSONBクエリ文字列によるSQLインジェクションを防ぐにはどうすればよいですか?

    ユーザーがJSONドキュメント内のパスを指定できるようにしてから、 json_extract_path_text 。つまり、WHERE句は次のようになります。

    WHERE json_extract_path_text(data, $1) = $2
    

    path引数は単なる文字列であり、簡単にパラメータ化できます。これは、指定された値までトラバースするキーを記述します。 'foo.bars[0].name' 。句の右側は、固定列フィルタリングに使用しているのと同じルールに沿ってパラメーター化されます。




    1. UCS-2とSQLServer

    2. ネットワークアダプタが接続を確立できませんでした-Oracle11g

    3. データベースに断片化されたインデックスがないことを確認する方法

    4. Django:executemanyとMySQLでカスタムの生のSQL挿入を使用する