最近は AQL を扱っており、AQL スクリプトを動的に作成するためのライブラリを作成しています。
PARAMETER INJECTION の問題 (SQL INJECTION など) に関連するものは何も見つからなかったので、FILTER 変数を AQL クエリ文字列内に直接設定しても安全だと思いますか?
最近は AQL を扱っており、AQL スクリプトを動的に作成するためのライブラリを作成しています。
PARAMETER INJECTION の問題 (SQL INJECTION など) に関連するものは何も見つからなかったので、FILTER 変数を AQL クエリ文字列内に直接設定しても安全だと思いますか?
すべてのユーザー定義入力に bindParameters を使用している場合、挿入された値は AQL パーサーによって評価されないため、挿入されたコードは実行されません。
安全なクエリ:
FOR x IN items FILTER x.name == @name RETURN x
安全でないクエリ:
"FOR x IN items FILTER x.name == " + name + " RETURN x"
sth を挿入します。お気に入り
'a' LET t = (FOR h IN items DELETE h)
in name は、保存クエリで正確にこの文字列を持つすべての要素を返します (害はありません)。安全でないクエリでは、アイテム内のすべての要素が削除されます (有害)。