Как отключить SSL в плагине sonar-cxx при использовании HTTP-сервера SonarQube?JAVA

Программисты JAVA общаются здесь
Anonymous
Как отключить SSL в плагине sonar-cxx при использовании HTTP-сервера SonarQube?

Сообщение Anonymous »

Я запускаю интерфейс командной строки SonarScanner и SonarQube каждый в контейнере Docker.
Я использую бесплатную версию SonarQube, поэтому добавил плагин cxx sonarqube v2.2.2.
Версия SonarScanner — 12.1, а версия SonarQube Docker: 26.3.0.120487, размещен сервер SonarQube по URL-адресу HTTP, а не HTTPS.
Однако, когда я запускаю анализ, плагин C++ сообщества (sonar-cxx) приводит к сбою всего сканера. Он пытается инициализировать контекст SSL для загрузки правил с сервера, но терпит неудачу, поскольку ищет путь к хранилищу ключей, которого нет в выбранном мной контейнере сканера.
Журнал:

Код: Выделить всё

09:00:49.879 INFO trust store based on javax.net.ssl not loadable: The value for the system property [javax.net.ssl.keyStore] is absent
09:00:49.892 ERROR Error during SonarScanner Engine execution
nl.altindag.ssl.exception.GenericKeyStoreException: java.lang.IllegalArgumentException: Failed to load the keystore from the classpath for the given path: [/usr/lib/jvm/java-21-amazon-corretto.x86_64/lib/security/cacerts]
at nl.altindag.ssl.util.KeyStoreUtils.loadKeyStore(KeyStoreUtils.java:91)
at nl.altindag.ssl.SSLFactory$Builder.withTrustMaterial(SSLFactory.java:308)
at org.sonar.cxx.sensors.utils.SSLContextBuilder.createSSLContext(SSLContextBuilder.java:107)
at org.sonar.cxx.sensors.utils.SonarServerWebApi.setServerConfig(SonarServerWebApi.java:174)
at org.sonar.cxx.sensors.utils.CxxIssuesReportSensor.downloadRulesFromServer(CxxIssuesReportSensor.java:95)
at org.sonar.cxx.sensors.utils.CxxIssuesReportSensor.executeImpl(CxxIssuesReportSensor.java:84)
at org.sonar.cxx.sensors.utils.CxxReportSensor.execute(CxxReportSensor.java:101)
...
Caused by: java.lang.IllegalArgumentException: Failed to load the keystore from the classpath for the given path: [/usr/lib/jvm/java-21-amazon-corretto.x86_64/lib/security/cacerts]
at nl.altindag.ssl.util.internal.ValidationUtils.requireNotNull(ValidationUtils.java:41)
at nl.altindag.ssl.util.KeyStoreUtils.loadKeyStore(KeyStoreUtils.java:88)
... 26 common frames omitted
Указанный путь существует в моем контейнере Docker /usr/lib/jvm/java-21-amazon-corretto.x86_64/lib/security/cacerts.
Мой sonar.host.url — http://:9000, поскольку я не могу выполнить проверку SSL, я безуспешно пытался установить другую Java в свой образ Dockerfile или изменить Sonar_scanner_opts, чтобы указать путь к сертификатам.
Я не понимаю ошибку.
Поскольку мой сервер использует HTTP, мне не нужна проверка SSL. Есть ли определенное свойство, которое я могу добавить в свой sonar-project.properties или SONAR_SCANNER_OPTS, чтобы полностью отключить инициализацию контекста SSL в плагине sonar-cxx, или мне следует перевести свой сервер SonarQube на HTTPS?

Вернуться в «JAVA»