Wir haben gerade ein Upgrade auf SonarQube 5.6 in einer Testumgebung durchgeführt. Das aktuelle Sonar 5.2 funktioniert in der Produktion mit LDAP-Authentifizierung.SonarQube 5.6 Authentifizierung LDAP-Gruppe
Ich kann mich mit meinen AD-Anmeldeinformationen anmelden, aber ich habe keine Gruppenmitgliedschaft, wenn ich meine Berechtigungen über das lokale Administratorkonto überprüfe.
Zusätzlich zu meinem ursprünglichen LDAP-Account in Sonar, habe ich jetzt einen zweiten Account mit der Syntax [email protected] anstatt nur Benutzername. Mein Benutzername-Konto hat immer noch die ursprünglichen Gruppenmitgliedschaften wie erwartet, aber das neu erstellte [email protected] nicht.
Wenn ich versuche, Gruppen in Sonar manuell zuzuweisen, werden sie bei der nächsten Anmeldung gelöscht, was ich glaube glaube.
Ich habe Debug-Protokoll aktiviert und dies zeigt, dass es tatsächlich noch die memberOf-Gruppen aus Active Directory findet, aber sie nicht mit meinem Konto verknüpft. Die Gruppen existieren noch in Sonar.
2016.06.08 11:20:55 DEBUG web[o.s.p.l.w.WindowsUsersProvider] Requesting details for user: nico
2016.06.08 11:20:55 DEBUG web[o.s.p.l.w.WindowsAuthenticationHelper] Getting details for user: nico
2016.06.08 11:20:55 DEBUG web[o.s.p.l.w.AdConnectionHelper] Getting active directory bind string for domain: Domain
2016.06.08 11:20:55 DEBUG web[o.s.p.l.w.AdConnectionHelper] Active directory bind string for the domain Domain: LDAP://Domain/DC=domain,DC=com
2016.06.08 11:20:56 DEBUG web[o.s.p.l.w.WindowsAuthenticationHelper] Details for user nico: UserDetails{name=Nico (nico), [email protected], [email protected]}
2016.06.08 11:20:56 DEBUG web[o.s.p.l.w.WindowsAuthenticationHelper] Authenticating user: nico
2016.06.08 11:21:03 DEBUG web[o.s.p.l.w.WindowsAuthenticationHelper] Getting groups for user: Domain\nico
2016.06.08 11:21:03 DEBUG web[o.s.p.l.w.WindowsAuthenticationHelper] Groups for the user Domain\nico : [Sonar [email protected], Sonar [email protected]]
2016.06.08 11:21:03 DEBUG web[o.s.s.u.NewUserNotifier] User created: [email protected] Notifying NewUserHandler handlers...
Was ich an dem Protokoll bemerken ist, dass die verwendete username-Eigenschaft nicht konsistent aussieht. An einem Punkt heißt es "Authentifizieren Benutzer: Nico" und in der anderen "Gruppen für Domain \ Nico" und am Ende "Erstellte Benutzer [email protected]" 3 verschiedene Benutzernamen verwendet werden.
Ist das etwas, das ich kontrollieren kann/sollte? oder würde dies ein Problem mit SonarQube sein.
Wir freuen uns auf Ihr Feedback.
Nico
Das ist mein LDAP-Konfiguration
# LDAP configuration
# General Configuration
sonar.security.realm: LDAP
sonar.security.savePassword: true
sonar.authenticator.createUsers: true
sonar.security.localUsers: admin,sonar-build
ldap.url: ldap://ipadress:389
ldap.bindDn: CN=SonarUser,OU=Service Accounts,DC=domain,DC=com
ldap.bindPassword: {aes}xxx
# User Configuration
ldap.user.baseDn: DC=domain,DC=com
ldap.user.request: (&(objectClass=user)(sAMAccountName={login}))
ldap.user.realNameAttribute: cn
ldap.user.emailAttribute: mail
# Group Configuration
ldap.group.baseDn: DC=domain,DC=com
ldap.group.request: (&(objectClass=group)(memberUid={uid}))
Hm, dachte ich, habe ich versucht, dass und konnte nicht, ich den vollständigen Namen aus der LOG-Datei nun kopiert und das scheint zu funktionieren, so dass ich ändern, nur die Namen der Gruppen und das sollte es mir tun Hoffnung. – Nico
Das Umbenennen der Gruppen ist nicht gut genug, deshalb ist mein erster Test fehlgeschlagen. Das Erstellen einer neuen Gruppe mit dem @ Domain-Namen funktioniert. Der Nachteil davon ist, dass ich alle Gruppenzuweisungen für die neuen Gruppen erneut anwenden muss. – Nico