權限模板能通過匹配projectKey的正則表達式來自動為新掃描項目分配權限。
在權限模板沒有被設置為默認的情況下,只有當項目projectKey匹配項目標識模式時才會分配該權限模板。如果設置為默認,則項目默認會分配該模板權限到新掃描項目而不管是否匹配正則表達式。
配置
-
新建用戶組
SonarQube - 以admin登錄 - 配置 - 權限 - 群組 - 創建群組
名稱: test -
新建用戶
配置 - 權限 - 用戶 - 創建用戶
名稱: test_user -
用戶加入用戶組
配置 - 權限 - 用戶 - 列表中"組"列點擊更新組 - 勾選test -
創建權限模板
配置 - 權限 - 權限模板 - 創建
名稱: test_template
項目標識模式: ^test-.* (^表示行首,test-為匹配字符串,.*表示匹配0到任意字符)
保存 -
權限模板分配權限
配置 - 權限 - 權限模板 - 列表最后設置符號 - 選中修改權限
Administrator 用戶勾選所有選項
test 勾選 瀏覽 查看源碼 問題管理員 管理安全熱點
勾選完就會自動保存
這一步的意思是所有projectKey匹配 ^test-.*的項目,會自動應用這一步分配的權限,即只有admin和test組下的用戶才能查看到test-demo項目的分析報告 -
使用Sonar-scanner 掃描項目
sonar-project.properties
sonar.projectKey=test-demo
sonar.projectName=test-demo
sonar.exclusions=**/doc/**
sonar.language=java
sonar.java.binaries=./
CMD.exe
sonar-scanner
- 測試
分別以admin賬號和test賬號登錄,發現都有test-demo的分析報告,若用其它用戶登錄,沒有報告信息。