【发布时间】:2022-11-15 18:28:38
【问题描述】:
使用 postgres 和 node-pg。
CALL schema.function(${sql})
function 是一个接受数组的可变参数函数。它对 SQL 注入开放。注射案件如何解决?
我的存储过程使用自定义类型:
CREATE TYPE isf.event_array AS
(
"id" BIGINT,
"topic" CHARACTER VARYING(255),
"type" TEXT,
"setId" BIGINT,
"eventId" CHARACTER (36),
"eventType" CHARACTER VARYING(50),
"metadata" JSONB,
"payload" JSONB
);
END IF;
我理解参数化查询的使用,但是在这种情况下,它需要传递一个数组。
非常感谢
【问题讨论】:
-
当你说“接受 JSON 数组”时,不确定你的意思是不是 "variadic"。你能分享函数定义sql吗?
标签: javascript node.js postgresql node-postgres node-pg-pool