在我的项目中,我遇到了 Sonar 安全违规问题 - 在在此操作系统命令中使用之前已正确清理。我已经对我的输入进行了模式检查,但违规行为仍然没有消失。
if(Pattern.matches("[0-9]+", empNp)){
ProcessBuilder processBuilder = new ProcessBuilder(exeLoc, folderPath, empNp);
它仍然不断提示 empNp 没有得到适当的清理。您能否让我知道如何处理这个问题。我无法对 empNp 进行硬编码,因为它是动态输入。如何处理这个问题。
最佳答案
许多安全规则的目的是引起人们对需要人类智能来确定代码是否真正安全的事情的关注。如果您确定输入已被正确清理,请将此问题标记为误报,然后问心无愧地继续。
关于java - Sonar 违规在此操作系统命令中使用之前已正确清理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39362189/