app.post("/upload",(req,res)=>{res.sendFile(req.params.filename)// options passed, but no root set
res.sendFile(req.params.filename,{maxAge:0})// options passed, but no root set, and a callback is set
res.sendFile(req.params.filename,{maxAge:0},(err)=>console.log(err))})
Compliant Code Examples
app.post("/upload",(req,res)=>{res.sendFile("foo")constoptions={maxAge:0,root:path.join(__dirname,"upload")}// options with root set
res.sendFile(req.params.filename,options)res.sendFile(req.params.filename,{maxAge:0,root:path.join(__dirname,"upload")})// options with root set (and a callback is set)
res.sendFile(req.params.filename,options,(err)=>console.log(err))res.sendFile(req.params.filename,{maxAge:0,root:path.join(__dirname,"upload")},(err)=>console.log(err))})
원활한 통합. Datadog Code Security 사용해 보기
Datadog Code Security
이 규칙을 사용해 Datadog Code Security로 코드 분석해 보기
이 규칙의 사용법
1
2
rulesets:- javascript-express # Rules to enforce JavaScript express.
리포지토리 루트에서 위의 콘텐츠를 사용해 static-analysis.datadog.yml 생성
Datadog의 무료 IDE Plugins를 사용하거나 Code Security 스캔을 CI 파이프라인에 추가