{iframe:src=http://update.sonarsource.org/plugins/crowd.html|width=700|height=250|frameborder=0}
Your browser does not support iframes.
{iframe}

Description / Features

This plugin enables the delegation of SonarQube authentication to Atlassian Crowd.

Only password-checking is done against the external system. Authorization (access control) is still fully managed in SonarQube. That’s why Crowd users do not automatically have access to SonarQube. During the first authentication trial, if the password is correct, the SonarQube database is automatically populated with the new user. The System administrator should also assign the user to the desired groups in order to grant him necessary rights. If one exists, the password in the SonarQube account will be ignored as the external system password will override it.

Requirements

Plugin

0.1

0.2

1.0

Crowd

2.0.2

2.0.2

2.0.2 - 2.2.x

Usage

  1. Make sure that at least one user with System administration role exists in SonarQube as well as in the external system
  2. Update the SONARQUBE_HOME/conf/sonar.properties file by adding the following lines:

    # Activates the plugin. Leave blank or comment out to use default SonarQube authentication.
    sonar.authenticator.class: org.sonar.plugins.crowd.CrowdAuthenticator
    
    # Ignore failure at startup if the connection to external system is refused.
    # Users can browse SonarQube but not log in as long as the connection fails.
    # When set to true, SonarQube will not start if connection to external system fails.
    # Default is false.
    #sonar.authenticator.ignoreStartupFailure: true
    
    # Automatically create users.
    # When set to true, user will be created after successful authentication, if doesn't exists.
    # The default group affected to new users can be defined online, in SonarQube general settings. The default value is "sonar-users".
    # Default is false.
    sonar.authenticator.createUsers: true
    
    # URL of the Crowd server (usually ends with /services/).
    crowd.url:
    
    # Crowd application name.
    # Default is 'sonar'.
    #crowd.application:
    
    # Crowd application password.
    crowd.password:
    
  3. Restart the SonarQube server and check the log file for:

    INFO  org.sonar.INFO  Authentication plugin: class org.sonar.plugins.crowd.CrowdAuthenticator
    INFO  org.sonar.INFO  Authentication plugin started
    
  4. Log in to SonarQube

Troubleshooting

For versions prior to SonarQube 4.1, you can enable debug logging by adding the following to conf/logback.xml:

  <logger name="org.sonar.plugins.crowd">
    <level value="DEBUG"/>
    <appender-ref ref="CONSOLE"/>
    <appender-ref ref="SONAR_FILE"/>
  </logger>