我使用dot.net WebApi2并且我从代码扫描中获得了Veracode Flaw:
' Controller的Action缺少一个Route属性,它将使用Route Constraint对Action参数执行输入验证.... 补救措施:确保在每个操作上使用RouteAratribute对象和路径约束'
提到的行动是:
[Route]
[HttpGet]
public IHttpActionResult Get(int? offset = null, int? rows = null)
{
...
}
由于我只有可选参数,因此未在Route属性中指定它们。如果我通过将thr路由注释更改为:
〔路线(" {偏移量:INT?} / {行:INT}"]
这条路线会在swagger api帮助页面中显示如下:
GET / api / v1 / foo / {offset} / {rows}
而不是(我们想要展示的):
GET / api / v1 / foo
帮助页面也会将这些参数标记为必需,即使它们不应该是。
有没有办法可以取悦Veracode,而不是破坏我的招摇文件?