Sonarqube 通过基本身份验证对声纳扫描仪进行身份验证

Sonarqube 通过基本身份验证对声纳扫描仪进行身份验证,sonarqube,sonarqube-scan,Sonarqube,Sonarqube Scan,我对这个问题感到沮丧, 我们的sonarqube服务器支持http基本身份验证,本地运行程序失败,出现401错误。是否有可能向其提供凭据?A官方文档显示如何提供sonarqube的内部用户。。。 runner+via+basic+auth 对此有何想法或经验?执行分析需要“执行分析”权限。 为了设置扫描仪的凭证,您需要使用sonar.login和sonar.password。 有关更多信息,请查看: 授权: 扫描仪参数: 我知道这个问题已经很老了,但我只是花了一天的时间来解决以下问题: TLD

我对这个问题感到沮丧, 我们的sonarqube服务器支持http基本身份验证,本地运行程序失败,出现401错误。是否有可能向其提供凭据?A官方文档显示如何提供sonarqube的内部用户。。。 runner+via+basic+auth

对此有何想法或经验?

执行分析需要“执行分析”权限。 为了设置扫描仪的凭证,您需要使用sonar.login和sonar.password。 有关更多信息,请查看:

  • 授权:
  • 扫描仪参数:

    • 我知道这个问题已经很老了,但我只是花了一天的时间来解决以下问题:

      TLDR: sonar runner即使配置了凭据,也不会使用这些凭据对服务器进行第一次调用。端点是/batch/index。 您必须允许公众访问该端点。对于所有其他URL,基本身份验证是可以的

      更多详情: 我使用Apache2.4作为反向代理,对Sonar7.9.2进行基本身份验证,它位于path/Sonar下的docker容器中。 我的Apache 2.4身份验证配置的一部分

      
      SetEnvIf用户代理“^ScannerMaven”扫描仪\u maven
      SetEnvIf用户代理“^ScannerCli”扫描仪\u maven
      需要群声纳
      需要expr%{REQUEST_URI}=~m#^.*\/sonar\/batch\/index#
      需要环境扫描仪
      SetEnv代理链身份验证打开
      
      如您所见,路径
      /sonar/batch/index
      不使用身份验证。作为一个不太好但总比没有好的限制,如果有人使用用户代理ScannerMaven或ScannerCli(即声纳扫描仪)发出请求,我会设置一个env变量。请注意,用户代理很容易伪造,或者可能会根据扫描仪的不同而改变。 对于所有其他URL,必须对sonar组中的用户进行身份验证。(Apache和Sonar的用户相同,代理将带有代理链auth的凭据转发给Sonar)

      使用maven测试此设置:
      mvn sonar:sonar

      使用

      
      声纳
      真的
      https://myhost/sonar/
      ${env.user}
      ${env.pwd}
      [...]
      org.sonarsource.scanner.maven
      声纳maven插件
      3.7.0.1746
      
      您尝试过什么?还有,你是如何分析的?嗨,朱利安,这不是Sonar身份验证问题,而是一个http身份验证问题,使得无法访问sonarQube。如果SonarScanner由于401错误而失败,这意味着它能够访问服务器,但用于执行分析的用户缺少某些权限