資安法通過上路之後,政府機關對於應用系統的防護實作必須更加精準,核心系統或採購金額大於一千萬元以上的系統必須執行源碼掃描。但源碼掃描的執行與修補耗費時間與可觀的成本,再交由第三方執行之前,先自己執行一次並完成可行的修補,會是比較好的做法。
1. SonarQube 是開源套件,可從以下網址下載社群版
https://www.sonarqube.org/success-download-community-edition/
2.下載後解壓縮到D:\SonarQube
3.SonarQube使用JAVA 開發,因此需要安裝JDK 11以上,且設定 %JAVA_HOME% 為安裝目錄。以下雖然會用Docker安裝減少設定的複雜度,但在電腦上掃描時仍會遇到JAVA。請留意,裝 JAVA Runtime會一直鬼打牆,沒用!!
4.利用Docker WSL2 安裝SonarQube,
4.1 安裝docker (建議至少要有8-16G的RAM)
4.2 取得 SonarQube 影像檔
在裝好Docker的電腦直接下:
docker pull sonarqube
裝好後記得啟動,第一次網址預設會在
5.設定啟動專案
6.準備好VS 2017的MSBuild 相關程式(跟你在開發的編譯器版本要一樣)
7.準備好待掃描原始碼,佈建client 掃描程式
我們的專案不能公開上傳到雲端平台,而且是需要編譯的C#程式,所以要佈建 .NET的Scanner掃描專案。注意,一個方案可能包含多個關聯的小專案,要掃描就要整包掃描,不然會發生找不到東西的問題。
Download and unzip the Scanner for .NET
Visit the official documentation of the Scanner for .NET to download the latest version, and add the executable's directory to the %PATH% environment variable