gpt4 book ai didi

c# - QuoteIdentifier 是否足以保护查询免受 Sql 注入(inject)攻击?

转载 作者:行者123 更新时间:2023-11-30 20:33:06 26 4
gpt4 key购买 nike

虽然参数是防止Sql 注入(inject)的最佳方式,但在构建动态查询时,有时我们不能使用它。例如,表/列/索引名称不能作为参数传入,而只能是纯文本。

好像是

SqlCommandBuilder.QuoteIdentifier

是我能找到的唯一选择。调用这个方法是否足以保护我们自己?

MSDN 文档:

Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier. This includes correctly escaping any embedded quotes in the identifier.

例如是

"Select * FROM " + SqlCommandBuilder.QuoteIdentifier("CustomTable" + userInputText);

安全吗?

编辑:查询只是一个例子。我有兴趣了解 Sql 注入(inject)是否可行。

最佳答案

它不会保护您免受攻击者进入您不希望他们访问的表。

比如SQL系统表...

关于c# - QuoteIdentifier 是否足以保护查询免受 Sql 注入(inject)攻击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40641732/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com