Authentification et Habilitations avec l'Active Directory dans SONAR

Sonar est un outil de mesure de qualité de code. Il permet entre autres d'automatiser la revue de code pour des projets JAVA, C++, WEB, ... en appliquant des règles fournies par findbugs, pmd ou encore checkstyle.

Cet outil dispose de son propre système d'identification. Pour se faciliter la vie en entreprise (pour une fois...) il peut être utile de configurer le connecteur LDAP pour se connecter avec un annuaire ou ici avec Active Directory.

Pré-requis

Installer le plugin LDAP

Configuration

Dans le fichier $SONAR_HOME/conf/sonar.properties, ajouter les lignes suivantes

sonar.security.realm: LDAP
ldap.url: ldap://monserveurad:389
ldap.authentication: SIMPLE
sonar.authenticator.createUsers: true
ldap.bindDn: CN=user,OU=...
ldap.bindPassword: ...
ldap.user.baseDn: OU=users,...
ldap.user.request: (&(objectClass=user)(sAMAccountName={login}))
ldap.group.baseDn: OU=users
ldap.group.request: (&(objectClass=group)(member={dn}))
ldap.user.loginAttribute: sAMAccountName
ldap.user.objectClass: user
ldap.group.objectClass: group
ldap.group.memberAttribute: member

Ici j'ai opté pour un mode d'identification simple. Il y au d'autres modes d'identification qui sont décrit sur la documentation officielle du plugin. Aussi, j'ai configuré SONAR pour que les utilisateurs soient crées lors de la première connexion ( paramètre sonar.authenticator.createUsers ) . Ca suffit pour une instance interne. Ce paramètre devra bien évidemment être positionné à false pour une instance publique.

Création des groupes

Il faut créer deux groupes • Un groupe pour l’administration • Un groupe pour les utilisateurs Nous allons faire correspondre les groupes AD aux groupes SONAR Dans la partie sécurité

optim_server_config003.png

Renseigner les éléments suivants :

optim_server_config004.png

Renseigner les groupes d’utilisateurs correspondants aux groupes AD

Cliquer sur "Add New Group" optim_server_config005.png

Nous obtenons les groupes suivants : optim_server_config006.png

Définition des rôles

Renseigner les appartenances aux rôles via les groupes

optim_server_config007.png

Pour chaque rôle, cliquer sur « select » optim_server_config008.png

Ajouter les groupes appartenant à chaque rôle.

optim_server_config009.png

On obtient l’écran final optim_server_config010.png

Dans l’écran « Administrateurs Système »,

optim_server_config011.png

renseigner les groupes de la même manière. Nous obtenons l’écran final :

optim_server_config012.png

Maintenant vous devriez pouvoir vous connecter avec votre identifiant et mot de passe AD.

Vus : 1208
Publié par Littlewing : 368