
ปลั๊กอินตรวจสอบ SBT-dependency ช่วยให้โครงการสามารถตรวจสอบไลบรารีที่ขึ้นอยู่กับสำหรับช่องโหว่ที่รู้จักและเผยแพร่ (เช่น CVES) ปลั๊กอินบรรลุเป้าหมายนี้โดยใช้ไลบรารีที่ยอดเยี่ยมของ OWASP ซึ่งมีการรวมเข้าด้วยกันหลายอย่างกับระบบการสร้างและการรวมอย่างต่อเนื่องอื่น ๆ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของ OWASP DependencyCheck และวิธีการอ่านรายงานตรวจสอบเอกสารของโครงการ
SBT-dependency-check เป็น autoplugin เพียงเพิ่มปลั๊กอินลงในไฟล์ project/plugins.sbt
addSbtPlugin("net.vonbuchholtz" % "sbt-dependency-check" % "5.1.0")
ใช้ SBT-dependency-check v2.0.0 หรือสูงกว่าเนื่องจากเวอร์ชันก่อนหน้านี้ไม่สามารถใช้งานได้กับฟีด NVD อีกต่อไป เริ่มต้นด้วย SBT-dependency-check v3.0.0 SBT v0.13.x ไม่ได้รับการสนับสนุนอีกต่อไป
| งาน | คำอธิบาย | สั่งการ |
|---|---|---|
| การพึ่งพา | ดำเนินการตรวจสอบการพึ่งพากับโครงการปัจจุบันการรวมและการพึ่งพาและสร้างรายงานสำหรับแต่ละโครงการ | $ sbt dependencyCheck |
| DependencyCheckAggRegate | รันการตรวจสอบการพึ่งพากับโครงการปัจจุบันการรวมและการพึ่งพาและสร้างรายงานเดียวในไดเรกทอรีผลลัพธ์ของโครงการปัจจุบัน | $ sbt dependencyCheckAggregate |
| PerdencyCheckanyProject | ดำเนินการตรวจสอบการพึ่งพากับโครงการรวมและการพึ่งพาทั้งหมดและสร้างรายงานเดียวในไดเรกทอรีผลลัพธ์ของโครงการปัจจุบัน | $ sbt dependencyCheckAnyProject |
| การพึ่งพา | อัปเดตแคชท้องถิ่นของข้อมูล NVD จาก NIST | $ sbt dependencyCheckUpdateOnly |
| การพึ่งพา | ลบสำเนาท้องถิ่นของ NVD สิ่งนี้ใช้เพื่อบังคับให้รีเฟรชข้อมูล | $ sbt dependencyCheckPurge |
| DependencyCheckListsettings | พิมพ์การตั้งค่าทั้งหมดและค่าของพวกเขาสำหรับโครงการ | $ sbt dependencyCheckListSettings |
รายงานจะถูกเขียนไปยัง crossTarget.value Location.Value สิ่งนี้สามารถเขียนทับได้โดยการตั้งค่า dependencyCheckOutputDirectory ดูการกำหนดค่าสำหรับรายละเอียด
หมายเหตุ: การเรียกใช้ครั้งแรกอาจใช้เวลาสักครู่เป็นข้อมูลเต็มรูปแบบจากฐานข้อมูลช่องโหว่แห่งชาติ (NVD) โฮสต์โดย NIST: https://nvd.nist.gov ต้องดาวน์โหลดและนำเข้าสู่ฐานข้อมูล การรันในภายหลังจะดาวน์โหลดชุดการเปลี่ยนแปลงเท่านั้นเว้นแต่การอัปเดตครั้งล่าสุดจะมากกว่า 7 วันที่ผ่านมา ขอแนะนำให้ตั้งค่ากระจกของฟีด NVD ในเครือข่ายท้องถิ่นของคุณเพื่อลดความเสี่ยงของการ จำกัด อัตรา ดู https://github.com/stevespringett/nist-data-mirror สำหรับคำแนะนำ
sbt-dependency-check ใช้การกำหนดค่าเริ่มต้นของ OWASP DependencyCheck คุณสามารถแทนที่พวกเขาในไฟล์ build.sbt ของคุณ ใช้งาน dependencyCheckListSettings เพื่อพิมพ์การตั้งค่าที่มีอยู่ทั้งหมดและค่าของพวกเขาไปยังคอนโซล SBT
| การตั้งค่า | คำอธิบาย | ค่าเริ่มต้น |
|---|---|---|
| พึ่งพา | ตั้งค่าว่าการอัปเดตอัตโนมัติของ NVD CVE/CPE, RETIREJS และข้อมูลการปราบปรามโฮสต์นั้นเปิดใช้งานหรือไม่ ไม่แนะนำให้เปลี่ยนเป็นเท็จ | จริง |
| enderencycheckcvevalidforhours | ตั้งค่าจำนวนชั่วโมงให้รอก่อนตรวจสอบการอัปเดตใหม่จาก NVD | 4 |
| AdendencyCheckFailBuildoncvss | ระบุว่าการสร้างควรล้มเหลวหากคะแนน CVSS ด้านบนหรือเท่ากับระดับที่ระบุจะถูกระบุ ค่าเริ่มต้นคือ 11 ซึ่งหมายความว่าเนื่องจากคะแนน CVSS คือ 0-10 โดยค่าเริ่มต้นการสร้างจะไม่ล้มเหลว ข้อมูลเพิ่มเติมเกี่ยวกับคะแนน CVSS สามารถดูได้ที่ NVD | 11.0 |
| AdendencyCheckJunitFailBuildoncvss | หากใช้รูปแบบรายงาน Junit PerdencyCheckJunitFailonCVSS ตั้งค่าเกณฑ์คะแนน CVSS ที่ถือว่าเป็นความล้มเหลว ค่าเริ่มต้นคือ 0 - ช่องโหว่ทั้งหมดถือว่าเป็นความล้มเหลว | 0 |
| DependencyCheckFormat | รูปแบบรายงานที่จะสร้าง (HTML, XML, Junit, CSV, JSON, Sarif, Jenkins, ทั้งหมด) การตั้งค่านี้จะถูกละเว้นหากตั้งค่าพึ่งพา CeckReportFormats | HTML |
| DependencyCheckFormats | ลำดับของรูปแบบการรายงานที่จะสร้าง (HTML, XML, Junit, CSV, JSON, Sarif, Jenkins, ทั้งหมด) | |
| DependencyCheckOutputDirectory | สถานที่เขียนรายงาน | crossTarget.value เช่น ./target/scala-2.11 |
| การพึ่งพา | ลำดับที่เป็นตัวเลือกของไฟล์ที่ระบุไฟล์และ/หรือไดเรกทอรีเพิ่มเติมเพื่อวิเคราะห์เป็นส่วนหนึ่งของการสแกน หากไม่ได้ระบุค่าเริ่มต้นไปยังอนุสัญญาสกาล่ามาตรฐาน (ดูเอกสาร SBT สำหรับรายละเอียด) | /src/main/resources |
| enderencycheckskip | ข้ามการวิเคราะห์การตรวจสอบการพึ่งพา | เท็จ |
| DependencyCheckSkiptestScope | การวิเคราะห์ข้ามสำหรับสิ่งประดิษฐ์ที่มีขอบเขตการทดสอบ | จริง |
| การพึ่งพา | การวิเคราะห์ข้ามสำหรับสิ่งประดิษฐ์ที่มีขอบเขตรันไทม์ | เท็จ |
| DependencyCheckskipprovidedScope | การวิเคราะห์ข้ามสำหรับสิ่งประดิษฐ์ที่มีขอบเขตที่ให้ไว้ | เท็จ |
| การพึ่งพา | การวิเคราะห์ข้ามสำหรับสิ่งประดิษฐ์ที่มีขอบเขตเสริม | เท็จ |
| การพึ่งพา | ลำดับของพา ธ ไฟล์ไปยังไฟล์การปราบปราม XML - ใช้เพื่อระงับผลบวกปลอม ดูการระงับผลบวกปลอมสำหรับไวยากรณ์ไฟล์ | |
| DependencyCheckCpestartswith | สตริงเริ่มต้นเพื่อระบุ CPE ที่มีคุณสมบัติในการนำเข้า | |
| enderencycheckhintsfile | พา ธ ไฟล์ไปยังไฟล์คำแนะนำ XML - ใช้เพื่อแก้ไขข้อผิดพลาดที่ผิดพลาด | |
| พึ่งพา | ใช้ SBT ModuleId เป็นตัวระบุ GAV ทำให้มั่นใจได้ว่า GAV จะพร้อมใช้งานแม้ว่า Maven Central จะไม่ใช่ | เท็จ |
| DependencyCheckAnalySistimeout | ตั้งค่าการวิเคราะห์หมดเวลาในไม่กี่นาที | 20 |
| PerdencyCheckenableExperimental | เปิดใช้งานเครื่องวิเคราะห์การทดลอง หากไม่ได้เปิดใช้งานเครื่องวิเคราะห์การทดลอง (ดูด้านล่าง) จะไม่ถูกโหลดหรือใช้ | เท็จ |
| DependencyCheckEnableretired | เปิดใช้งานเครื่องวิเคราะห์ที่เกษียณแล้ว หากไม่ได้เปิดใช้งานเครื่องวิเคราะห์ที่เกษียณอายุจะไม่ถูกโหลดหรือใช้ | เท็จ |
คุณสมบัติต่อไปนี้ใช้เพื่อกำหนดค่าตัววิเคราะห์ประเภทไฟล์ต่างๆ คุณสมบัติเหล่านี้สามารถใช้เพื่อปิดเครื่องวิเคราะห์เฉพาะหากไม่จำเป็น โปรดทราบว่าเครื่องวิเคราะห์เฉพาะนั้นจะปิดการใช้งานตัวเองโดยอัตโนมัติหากไม่มีประเภทไฟล์ที่ตรวจพบการสนับสนุน - ดังนั้นการปิดการใช้งานโดยเฉพาะอาจไม่จำเป็น สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัววิเคราะห์แต่ละตัวจะดูเอกสารประกอบการวิเคราะห์ตัววิเคราะห์พึ่งพา
| การตั้งค่า | คำอธิบาย | ค่าเริ่มต้น |
|---|---|---|
| DependencyCheckarchiveAnalyzerenabled | ตั้งค่าว่าจะใช้เครื่องวิเคราะห์ที่เก็บถาวรหรือไม่ | จริง |
| พึ่งพา | รายการส่วนขยายไฟล์เพิ่มเติมที่คั่นด้วยเครื่องหมายจุลภาคที่จะได้รับการปฏิบัติเหมือนไฟล์ zip เนื้อหาจะถูกแยกและวิเคราะห์ | |
| AdendencyCheckJaranalyzerenabled | ตั้งค่าว่าจะใช้เครื่องวิเคราะห์ JAR หรือไม่ | จริง |
| DependencyCheckDartanalyzerenabled | ตั้งค่าว่าเปิดใช้งานเครื่องวิเคราะห์ DART แบบทดลองหรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyChecknownExploitedEnabled | ตั้งค่าว่าเปิดใช้งานการอัพเดทช่องโหว่และการวิเคราะห์ที่เป็นที่รู้จักหรือไม่ | จริง |
| DependencyChecknownExploitedurl | ตั้งค่า URL เป็นช่องโหว่ที่เป็นที่รู้จักของ CISA | https://www.cisa.gov/sites/default/files/feeds/nown_exploited_vulnerabilitive.json |
| DependencyChecknownExploitedValidForhours | ตั้งค่าช่วงเวลาเป็นชั่วโมงจนกว่าจะมีการตรวจสอบครั้งต่อไปสำหรับ CISA ที่รู้จักกันดีว่าฟีดข้อมูล JSON ที่ใช้ประโยชน์จาก CISA จะดำเนินการ | 24 |
| DependencyCheckCentralanalyzerenabled | ตั้งค่าว่าจะใช้เครื่องวิเคราะห์กลางหรือไม่ หากเครื่องวิเคราะห์นี้ถูกปิดใช้งานมีโอกาสที่ดีที่คุณต้องการปิดการใช้งานเครื่องวิเคราะห์ Nexus (ดูด้านล่าง) | เท็จ |
| enderencyCheckCentralanalyzerusecache | ตั้งค่าว่านักวิเคราะห์ส่วนกลางจะแคชผลลัพธ์หรือไม่ ผลลัพธ์ที่แคชหมดอายุหลังจาก 30 วัน | จริง |
| DependencyCheckOsSindexAnalyzerenabled | ตั้งค่าว่าตัววิเคราะห์ดัชนี OSS จะเปิดใช้งานหรือไม่ | จริง |
| DependencyCheckOssIndexanalyzerurl | URL ของบริการ Sonatype OSS INDEX | https://ossindex.sonatype.org |
| DependencyCheckOsSindexAnalyzerUsecache | ตั้งค่าว่าตัววิเคราะห์ดัชนี OSS จะแคชผลลัพธ์หรือไม่ ผลลัพธ์ที่แคชหมดอายุหลังจาก 24 ชั่วโมง | จริง |
| PerdencyCheckOsSindexAnalyzerusername | ชื่อผู้ใช้เสริมที่ใช้สำหรับบริการ Sonatype OSS INDEX หมายเหตุ: ไม่จำเป็นต้องใช้บัญชีที่มีดัชนี OSS | |
| PredencyCheckOsSindexAnalyzerPassword | รหัสผ่านเสริมที่จะใช้สำหรับบริการ Sonatype OSS INDEX | |
| DependencyCheckOssIndexwarnonlyonRemoteErrors | ตั้งค่าว่าข้อผิดพลาดระยะไกลจากดัชนี OSS (เช่นเกตเวย์ที่ไม่ดีค่าขีด จำกัด อัตราเกิน) จะส่งผลให้เกิดคำเตือนเท่านั้นแทนที่จะดำเนินการล้มเหลว | เท็จ |
| DependencyCheckNexusAnalyzerenabled | ตั้งค่าว่าจะใช้ตัววิเคราะห์ Nexus หรือไม่ เครื่องวิเคราะห์นี้ถูกแทนที่โดยเครื่องวิเคราะห์กลาง อย่างไรก็ตามคุณสามารถกำหนดค่าสิ่งนี้ให้ทำงานกับการติดตั้ง Nexus Pro | เท็จ |
| พึ่งพา | กำหนดจุดสิ้นสุดบริการเว็บของ Nexus Server (ตัวอย่าง http: //domain.enterprise/service/local/) หากไม่ได้ตั้งค่าตัววิเคราะห์ Nexus จะถูกปิดใช้งาน | https://repository.sonatype.org/service/local/ |
| enderencychecknexususesproxy | ควรใช้พร็อกซีที่กำหนดไว้หรือไม่เมื่อเชื่อมต่อกับ Nexus | จริง |
| พึ่งพา | ชื่อผู้ใช้เพื่อตรวจสอบความถูกต้องของจุดสิ้นสุดบริการเว็บของ Nexus Server หากไม่ได้ตั้งค่าตัววิเคราะห์ Nexus จะใช้การเชื่อมต่อที่ไม่ผ่านการตรวจสอบ | |
| PerdencyCheckNexusPassword | รหัสผ่านเพื่อตรวจสอบสิทธิ์ไปยังจุดสิ้นสุดบริการเว็บของ Nexus Server หากไม่ได้ตั้งค่าตัววิเคราะห์ Nexus จะใช้การเชื่อมต่อที่ไม่ผ่านการตรวจสอบ | |
| DependencyCheckPyDistributionAnalyzerenabled | ตั้งค่าว่าจะใช้เครื่องวิเคราะห์การกระจายงูหลาม ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckPyCagageAnalyzerenabled | ตั้งค่าว่าจะใช้เครื่องวิเคราะห์แพ็คเกจ Python ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckRubyGemsAnalyzerenabled | ตั้งค่าว่าจะใช้เครื่องวิเคราะห์ Ruby Gemspec แบบทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckopensslanalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ OpenSSL หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckCmakeanalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ CMake ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| พึ่งพา | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ AutoConf ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckMavenInStallanalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์การติดตั้ง Maven หรือไม่ | จริง |
| PerdencyCheckPipanalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ PIP ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckPipFileAnalyzerenabled | ตั้งค่าไม่ว่าจะใช้เครื่องวิเคราะห์ pipfile ทดลอง หรือไม่ควรใช้ dependencyCheckEnableExperimental ตั้งค่าได้ | จริง |
| DependencyCheckPoetryAnalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์บทกวี ทดลอง หรือไม่ควรใช้ dependencyCheckEnableExperimental หรือไม่ | จริง |
| DependencyCheckComposerAnalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ไฟล์ล็อค PHP PHP ที่ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| enderencycheckcpanfileanalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ไฟล์ Perl CPAN ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckNodeanalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ Node.js ที่เกษียณแล้ว หรือไม่ | เท็จ |
| DependencyCheckNodePackagesKipDevDependencies | ตั้งค่าว่าตัววิเคราะห์ Node.js จะข้าม devdependencies หรือไม่ | เท็จ |
| enderencychecknodeauditanalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์การตรวจสอบโหนดหรือไม่ | จริง |
| DependencyCheckNodeAuditSkipDevdevdependencies | ตั้งค่าว่าตัววิเคราะห์การตรวจสอบโหนดจะข้าม devdependencies หรือไม่ | เท็จ |
| enderencychecknodeauditanalyzerurl | ตั้งค่า URL API การตรวจสอบโหนดสำหรับเครื่องวิเคราะห์การตรวจสอบโหนด หากไม่ได้ตั้งค่าใช้ URL เริ่มต้น | https://registry.npmjs.org/-/npm/v1/security/audits |
| DependencyCheckNodeAuditanalyzerusecache | ตั้งค่าว่าตัววิเคราะห์การตรวจสอบโหนดจะแคชผลลัพธ์หรือไม่ ผลลัพธ์ที่แคชหมดอายุหลังจาก 24 ชั่วโมง | จริง |
| DependencyCheckNpmcpeanalyzerenabled | ตั้งค่าไม่ว่าจะใช้ตัววิเคราะห์ NPM CPE ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| พึ่งพา | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์การตรวจสอบเส้นด้ายหรือไม่ เครื่องวิเคราะห์นี้ต้องการเส้นด้ายและการเชื่อมต่ออินเทอร์เน็ต ใช้ dependencyCheckNodeAuditSkipDevDependencies เพื่อข้ามการพึ่งพา dev | จริง |
| enderencyCheckPathToyarn | ตั้งค่าเส้นทางไปยังเส้นด้ายที่ปฏิบัติการได้ | |
| PredencyCheckPnpMauditanalyzerenabled | ตั้งค่าว่าเครื่องวิเคราะห์การตรวจสอบ PNPM เปิดใช้งานหรือไม่ เครื่องวิเคราะห์นี้ต้องการ PNPM และการเชื่อมต่ออินเทอร์เน็ต ใช้ nodeAuditSkipDevDependencies เพื่อข้ามการพึ่งพา dev | จริง |
| DependencyCheckPathTopnpm | ตั้งค่าเส้นทางไปยัง pnpm ที่เรียกใช้งานได้ | |
| DependencyCheckNuspecanalyzerenabled | ตั้งค่าไม่ว่าจะใช้เครื่องวิเคราะห์. NUGET NUGET NUGET หรือไม่ | จริง |
| DependencyCheckNugetConfanalyzerenabled | ตั้งค่าว่าแพ็คเกจ. NET NUGET แบบ ทดลอง จะใช้เครื่องวิเคราะห์ CONFIG หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | เท็จ |
| AdendencyCheckCocoApodsenabled | ควรใช้ตัววิเคราะห์ cocoapods ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckMixauditAnalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์การตรวจสอบผสม การทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | อ. |
| DependencyCheckMixauditPath | ตั้งค่าพา ธ ไปยัง Executable Mix_audit; ใช้เฉพาะเมื่อเปิดใช้งานเครื่องวิเคราะห์การตรวจสอบมิกซ์และเปิดใช้งานเครื่องวิเคราะห์การทดลอง | |
| DependencyChecksWiftEnabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์แพ็คเกจ Swift Manager ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckSwiftPackageResolvedAnalyzerenabled | ตั้งค่าไม่ว่าจะเป็นตัววิเคราะห์การแก้ไขแพคเกจ Swift ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| AdendencyCheckBundleAuditenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์การตรวจสอบทับทับทิม แบบทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckPathToBundleAudit | เส้นทางสู่การตรวจสอบชุดทับทิม | |
| DependencyCheckBundleAuditWorkingDirectory | ตั้งค่าเส้นทางสำหรับไดเรกทอรีการทำงานที่ควรดำเนินการไบนารีการตรวจสอบชุดทับทิม | |
| DependencyCheckAssemblyAnalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์แอสเซมบลี. NET หรือไม่ | จริง |
| DependencyCheckMsBuildAnalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ MSBuild หรือไม่ | จริง |
| PredencyCheckPathTodotNetCore | เส้นทางไปยัง. NET Core สำหรับการวิเคราะห์แอสเซมบลี. NET บนระบบที่ไม่ใช่หน้าต่าง | |
| PredencyCheckPeanalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ PE ทดลอง ที่อ่านส่วนหัว PE ของไฟล์ DLL และ EXE หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| DependencyCheckRetirejSanalyzerenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์ RetireJS หรือไม่ | จริง |
| enderencycheckretirejsforceupdate | ตั้งค่าว่าตัววิเคราะห์ RetireJS ควรอัปเดตโดยไม่คำนึงถึงการตั้งค่า´DependencyCheckautoupdate´ | จริง |
| DependencyCheckRetirejSanalyzerrepojsurl | ตั้งค่า URL เป็นที่เก็บ retireJS หมายเหตุ ชื่อไฟล์จะต้องเป็น jsrepository.json | https://raw.githubusercontent.com/retirejs/retire.js/master/repository/jsrepository.json |
| enderencycheckretirejsanalyzerrepouser | ชื่อผู้ใช้สำหรับการรับรองความถูกต้องเพื่อเชื่อมต่อกับ URL RetireJS | |
| PerdencyCheckRetirejSanalyzerRepopassword | รหัสผ่านสำหรับการรับรองความถูกต้องเพื่อเชื่อมต่อกับ URL RetireJS | |
| DependencyCheckRetirejSanalyzerRepovalidfor | ตั้งค่าช่วงเวลาเป็นชั่วโมงจนกว่าการตรวจสอบครั้งต่อไปสำหรับการอัปเดต CVES จะดำเนินการโดยตัววิเคราะห์ RetireJS | 24 |
| DependencyCheckRetirejSanalyzerFilters | ตั้งค่าตัวกรองหนึ่งตัวขึ้นไปสำหรับตัววิเคราะห์ RetireJS | |
| enderencycheckretirejsanalyzerfilternonvulnerable | ตั้งค่าว่าเครื่องวิเคราะห์ RetireJS ควรกรองการพึ่งพาที่ไม่สามารถใช้งานได้หรือไม่ | เท็จ |
| enderencyCheckartifactoryAnalyzerenabled | ตั้งค่าว่าจะใช้เครื่องวิเคราะห์ jfrog artifactory หรือไม่ | เท็จ |
| การพึ่งพา | URL เซิร์ฟเวอร์ Artifactory | |
| PredencyCheckartifactoryanalyzeruseproxy | ตั้งค่าว่าควรเข้าถึงสิ่งประดิษฐ์ผ่านพร็อกซีหรือไม่ | เท็จ |
| DependencyCheckArtifactoryAnalyzerparallelanalysis | ตั้งค่าไม่ว่าจะเป็นเครื่องวิเคราะห์ artifactory ควรทำงานแบบขนานหรือไม่ | จริง |
| PerdencyCheckartifactoryAnalyzerusername | ชื่อผู้ใช้ (ใช้กับโทเค็น API เท่านั้น) เพื่อเชื่อมต่อกับอินสแตนซ์ Artifactory | |
| การพึ่งพา | โทเค็น API เพื่อเชื่อมต่อกับอินสแตนซ์ artifactory หมายเหตุ: การตั้งค่าเหล่านี้ไม่ควรเพิ่มลงในไฟล์ build.sbt ในพื้นที่ของคุณและมุ่งมั่นไปยังที่เก็บรหัสของคุณด้วยเหตุผลด้านความปลอดภัย สามารถเพิ่มลงในไฟล์ ~/.sbt/<version>/global.sbt แทน | |
| DependencyCheckArtifactoryAnalyzererToken | โทเค็นผู้ถือเพื่อเชื่อมต่อกับอินสแตนซ์ของอาร์ทิฟอรี หมายเหตุ: การตั้งค่าเหล่านี้ไม่ควรเพิ่มลงในไฟล์ build.sbt ในพื้นที่ของคุณและมุ่งมั่นไปยังที่เก็บรหัสของคุณด้วยเหตุผลด้านความปลอดภัย สามารถเพิ่มลงในไฟล์ ~/.sbt/<version>/global.sbt แทน | |
| AdendencyCheckGolangDepenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์การพึ่งพา Golang ทดลอง หรือไม่ dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| PredencyCheckGolangModenabled | ตั้งค่าว่าควรใช้เครื่องวิเคราะห์โมดูล Golang ทดลอง หรือไม่ ต้อง go ติดตั้ง dependencyCheckEnableExperimental จะต้องตั้งค่าเป็นจริง | จริง |
| การพึ่งพา | เส้นทางสู่รันไทม์ "Go" |
คุณสมบัติต่อไปนี้สามารถกำหนดค่าในปลั๊กอิน อย่างไรก็ตามพวกเขามีการเปลี่ยนแปลงบ่อยครั้ง ข้อยกเว้นหนึ่งอาจเป็นคุณสมบัติ CVEDURL ซึ่งสามารถใช้ในการโฮสต์กระจกของ NVD ภายในสภาพแวดล้อมขององค์กร
| การตั้งค่า | คำอธิบาย | ค่าเริ่มต้น |
|---|---|---|
| enderencycheckcveurlmodified | URL สำหรับฟีดข้อมูล CVE JSON ที่แก้ไขแล้ว เมื่อทำมิเรอร์ NVD คุณจะต้องสะท้อนไฟล์ *.json.gz และไฟล์ *.meta เป็นทางเลือกหาก dependencyCheckCveUrlBase ที่กำหนดเองของคุณ CheckCveurlbase เป็นเพียงการเปลี่ยนชื่อโดเมน | https://nvd.nist.gov/feeds/json/cve/1.1/nvdcve-1.1-modified.json.gz |
| enderencycheckcveurlbase | URL พื้นฐานสำหรับฟีดข้อมูล CVE JSON ของแต่ละปี %D จะถูกแทนที่ด้วยปี | https://nvd.nist.gov/feeds/json/cve/1.1/nvdcve-1.1-%D.json.gz |
| พึ่งพา checkcveuser | ชื่อผู้ใช้ที่ใช้เมื่อเชื่อมต่อกับ dependencyCheckCveUrlBase | |
| PredencyCheckCvePassword | รหัสผ่านที่ใช้เมื่อเชื่อมต่อกับ dependencyCheckCveUrlBase | |
| enderencycheckcvewaittime | เวลาในมิลลิวินาทีเพื่อรอระหว่างการดาวน์โหลดจาก NVD | 4000 |
| enderencycheckcvestartyear | ปีแรกของข้อมูล NVD CVE ที่จะดาวน์โหลดจาก NVD | ปี 2545 |
| DependencyCheckConnectionTimeOut | ตั้งค่าการหมดเวลาการเชื่อมต่อ URL (เป็นมิลลิวินาที) ที่ใช้เมื่อดาวน์โหลดข้อมูลภายนอก | |
| DependencyCheckConnectionReadTimeOut | ตั้งค่าการหมดเวลาอ่าน URL (เป็นมิลลิวินาที) ที่ใช้เมื่อดาวน์โหลดข้อมูลภายนอก | |
| พึ่งพา Datadirectory | ตั้งค่าไดเร็กทอรีข้อมูลเพื่อเก็บเนื้อหา SQL CVES โดยทั่วไปไม่ควรเปลี่ยนแปลง | [jar] data |
| PerdencyCheckDatabasedRivername | ชื่อของไดรเวอร์ฐานข้อมูล ตัวอย่าง: org.h2.driver | org.h2.driver |
| DependencyCheckDatabasedRiverPath | พา ธ ไปยังไฟล์ jar ไดรเวอร์ฐานข้อมูล ใช้เฉพาะในกรณีที่ไดรเวอร์ไม่ได้อยู่ในเส้นทางชั้นเรียน | |
| PredencyCheckConnectionString | สตริงการเชื่อมต่อที่ใช้ในการเชื่อมต่อกับฐานข้อมูล %S จะถูกแทนที่ด้วยชื่อสำหรับฐานข้อมูล | JDBC: H2: ไฟล์:%s; autocommit = on; mv_store = false; |
| enderencyCheckDatabaseUser | ชื่อผู้ใช้ที่ใช้เมื่อเชื่อมต่อกับฐานข้อมูล | ผู้คัดค้าน |
| PerdencyCheckDatabasepassword | รหัสผ่านที่ใช้เมื่อเชื่อมต่อกับฐานข้อมูล | |
| DependencyCheckHostedSuppressionsEnabled | จะใช้ไฟล์การปราบปรามที่โฮสต์หรือไม่ | จริง |
| PredencyCheckHostedSuppressionsForceUpdate | ไม่ว่าจะเป็นไฟล์ suppressions ที่โฮสต์จะอัปเดตโดยไม่คำนึงถึงการตั้งค่า dependencyCheckAutoUpdate หรือไม่ | เท็จ |
| enderencycheckhostedsuppressionsurl | URL ไปยังสำเนามิเรอร์ของไฟล์ suppressions ที่โฮสต์สำหรับสภาพแวดล้อมที่ จำกัด อินเทอร์เน็ต | https://jeremylong.github.io/dependencycheck/suppressions/publishedsuppressions.xml |
| DependencyCheckHostedSuppressionsValidForHours | ตั้งค่าจำนวนชั่วโมงให้รอก่อนตรวจสอบการอัปเดตใหม่จาก NVD | 2 |
ใช้ขอบเขต Global หรือ ThisBuild หากคุณต้องการกำหนดการตั้งค่าสำหรับโครงการทั้งหมด กำหนดระดับโครงการหากคุณต้องการแตกต่างจากการตั้งค่าเริ่มต้นหรือ global/thisbuild สำหรับโครงการเฉพาะ
build.sbt
Global / dependencyCheckFormats := Seq ( " HTML " , " JSON " )
lazy val root = (project in file( " . " ))
.aggregate(core)
.settings(
libraryDependencies += " com.github.t3hnar " %% " scala-bcrypt " % " 2.6 " % " test " ,
dependencyCheckSkipTestScope := false
)
lazy val util = (project in file( " util " ))
.settings(
libraryDependencies += " commons-beanutils " % " commons-beanutils " % " 1.9.1 "
)
lazy val core = project.dependsOn(util)
.settings(
libraryDependencies += " org.apache.commons " % " commons-collections4 " % " 4.1 " % " runtime " ,
dependencyCheckSkip := true
)
การตั้งค่าเกือบทั้งหมดได้รับการประเมินเฉพาะสำหรับโครงการที่คุณกำลังดำเนินการอยู่ไม่ใช่สำหรับโครงการย่อยแต่ละโครงการ การยกเว้นที่ได้รับการสนับสนุนในการทำงานสำหรับโครงการ aggregate() และ dependsOn() คือการตั้งค่าการข้ามขอบเขต:
dependencyCheckSkipdependencyCheckSkipTestScopedependencyCheckSkipRuntimeScopedependencyCheckSkipProvidedScopedependencyCheckSkipOptionalScopeคุณควรตั้งค่าสิ่งเหล่านี้เป็นรายบุคคลสำหรับแต่ละโครงการหากจำเป็น
เพิ่มไฟล์ build.sbt ของคุณต่อไปนี้เพื่อเพิ่มระดับบันทึกจาก info เริ่มต้นเป็นเช่น debug
logLevel in dependencyCheck := Level.Debug
และเพิ่ม -Dlog4j2.level=debug เมื่อเรียกใช้เช็ค:
sbt -Dlog4j2.level=debug dependencyCheck
แทนที่ dependencyCheck ด้วยชื่องานที่เหมาะสมที่คุณใช้สำหรับโครงการของคุณ
หากคุณต้องการใช้การกำหนดค่าเริ่มต้นสำหรับโครงการ SBT ทั้งหมดของคุณคุณสามารถเพิ่มได้เป็นการตั้งค่าทั่วโลก:
เพิ่มปลั๊กอินลงใน ~/.sbt/1.0/plugins/sbt-dependency-check.sbt
addSbtPlugin( " net.vonbuchholtz " % " sbt-dependency-check " % " 5.1.0 " ) เพิ่มการตั้งค่าที่ ~/.sbt/1.0/global.sbt โดยใช้ชื่อที่ผ่านการรับรองอย่างสมบูรณ์ (รวมถึงแพ็คเกจและโครงสร้างวัตถุที่ซ้อนกัน) เช่น
net.vonbuchholtz.sbt.dependencycheck. DependencyCheckPlugin .autoImport.dependencyCheckFormat := " All "สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าทั่วโลกและปลั๊กอินตรวจสอบเอกสาร SBT: https://www.scala-sbt.org/1.x/docs/global-settings.html
SBT และ sbt-dependency-check ทั้งสองให้เกียรติการตั้งค่าพร็อกซี HTTP และ HTTPS มาตรฐานสำหรับ JVM
sbt -Dhttp.proxyHost=proxy.example.com
-Dhttp.proxyPort=3218
-Dhttp.proxyUser=username
-Dhttp.proxyPassword=password
-DnoProxyHosts="localhost|http://www.google.com"
dependencyCheck
purgeDeletesDatabase Run Query Update PUBLIC.PROPERTIES t SET t."VALUE"= '<NEW_VERSION_NUMBER>' WHERE t.ID = 'version' เรียกใช้งาน release และทำตามคำแนะนำ ตรวจสอบว่าการเปิดตัวมาถึง Maven Central ต้องใช้เวลานานถึงสองชั่วโมงในการจัดทำดัชนีสำหรับ https://search.maven.org
ลิขสิทธิ์ (c) 2016-2022 Alexander Baron v. Buchholtz
ได้รับใบอนุญาตภายใต้ใบอนุญาต Apache เวอร์ชัน 2.0 ("ใบอนุญาต"); คุณไม่สามารถใช้ไฟล์นี้ยกเว้นตามใบอนุญาต คุณอาจได้รับสำเนาใบอนุญาตที่
https://www.apache.org/licenses/license-2.0
เว้นแต่ว่ากฎหมายที่บังคับใช้หรือตกลงเป็นลายลักษณ์อักษรซอฟต์แวร์ที่แจกจ่ายภายใต้ใบอนุญาตจะถูกแจกจ่ายตาม "ตามพื้นฐาน" โดยไม่มีการรับประกันหรือเงื่อนไขใด ๆ ไม่ว่าจะโดยชัดแจ้งหรือโดยนัย ดูใบอนุญาตสำหรับภาษาเฉพาะที่ควบคุมการอนุญาตและข้อ จำกัด ภายใต้ใบอนุญาต