私はデフォルトの設定でsonarqube 6.5を持っています。 sonar.forceAuthenticationフラグがfalseに設定されている場合、以下のコマンドを使用してプロジェクトを作成および分析できます。
_mvn sonar:sonar -Dsonar.Host.url=https://mySonarHost/sonar -Dsonar.login=mySonarUserKey
_
Sonar.forceAuthenticationパラメータを有効にすると(sonar.forceAuthentication = true)、プロジェクトを分析できません。私はいつもmavenエラーが出ます:
[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.3.0.603:sonar (default-cli) on project storm: Not authorized. Please check the properties sonar.login and sonar.password. -> [Help 1]
デフォルトの管理者アカウントでも作成されたユーザーアカウント(プロジェクトを分析する権限を持つ)では機能しません。私もユーザーキーを使用しないようにしようとしましたが、ユーザーのログインとパスワード(_-Dsonar.login
_と_-Dsonar.password
_ in maven config)が機能しません。別のソナーバージョンを使用しようとしました(4.5.7から5.6.6から最新の6.5まで、ただし常に同じ結果が得られます)。
接続中、access.logに次のようなメッセージが表示されます。
_IP_ADDRESS - - [08/Sep/2017:12:03:33 +0200] "GET /sonar/batch/index HTTP/1.1" 200 - "-" "ScannerMaven/3.3.0.603/3.5.0" "SOME_KEY"
IP_ADDRESS - - [08/Sep/2017:12:03:33 +0200] "GET /sonar/api/settings/values.protobuf HTTP/1.1" 401 - "-" "ScannerMaven/3.3.0.603/3.5.0" "SOME_KEY"
_
私はsonar.forceAuthenticationパラメータをtrueに設定する必要があります(信頼できるユーザーのみがアクセスできます)。
資格情報パラメーターを使用してmavenを介してsonarqubeを構成およびアクセスする方法はありますか?
両方設定しましたかsonar.login
およびsonar.password
パラメータ( https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Maven#AnalyzingwithSonarQubeScannerforMaven-Security )?
最近のバージョン(SonarQube 6.5など)では、ユーザートークンを使用してsonar.login
パラメータ: https://docs.sonarqube.org/display/SONAR/User+Token
これは、プロジェクトのSonar Cube Dashboardを更新するために使用する最小限のコマンドです。
mvn clean install sonar:sonar -Dsonar.Host.url=<Server_URL> -Dsonar.login=<Token_For_Your_User_Id> -Dsonar.projectKey=<It will be calculated by default using group id & artifact id but its advisable that you use a unique string for all users> -Dsonar.projectName=<Descriptive Project Name to show on dashboard> -Dsonar.projectVersion=<if you wish to specify a version number>
文字列値にスペースが含まれている場合は、常に二重引用符で囲むことができます。
上記のコマンドを使用する前に、Ericが提供する回答で指定されているユーザーIDのトークンを生成する必要があります。パスワードプロパティを渡す必要はありません。