如何避免 sql 注入 Azure DocumentDB 存储过程?
除了清理输入(列入白名单的字符)之外,这里的最佳做法是什么?
以 MSDN 示例改编的以下存储过程为例:
function simple_sp(s1) {
var context = getContext();
var collection = context.getCollection();
var response = context.getResponse();
collection.queryDocuments(collection.getSelfLink(),
'SELECT * FROM Families f where f.id = "' + s1 + '"', {},
function(res){}
);
}
该 s1 参数是将 sql 注入查询的标准示例。到目前为止,我还没有找到一种方法来参数化查询。