2

テスト環境で SonarQube 5.6 へのアップグレードを実行しました。現在の Sonar 5.2 は、LDAP 認証を使用して本番環境で正常に動作します。

AD 資格情報でログインできますが、ローカル管理者アカウントを使用してアクセス許可を確認すると、グループ メンバーシップがありません。

また、Sonar の元の LDAP アカウントに加えて、ユーザー名だけでなく、username@domain.com という構文を持つ 2 つ目のアカウントができました。ユーザー名アカウントには、期待どおりに元のグループ メンバーシップがまだありますが、新しく作成された username@domain.com にはありません。

ソナーでグループを手動で割り当てようとすると、次のログイン時にグループがクリアされます。これは意図されていると思います。

ログのデバッグを有効にしましたが、実際には Active Directory から memberOf グループが検出されますが、それらが自分のアカウントにリンクされていません。グループはまだ 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=Nico@domain.com, userId=nico@Domain}
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 Admins@Domain, Sonar Users@Domain]
2016.06.08 11:21:03 DEBUG web[o.s.s.u.NewUserNotifier] User created: nico@Domain. Notifying NewUserHandler handlers...

ログについて気付いたのは、使用されているユーザー名プロパティが一貫していないように見えることです。ある時点で「認証中のユーザー: nico」と表示され、別の箇所では「Domain\Nico のグループを取得中」と表示され、最後に「作成されたユーザー Nico@domain.com」という 3 つの異なるユーザー名が使用されています。

これは私が制御できる/制御すべきものですか? または、これは SonarQube の問題でしょうか。

フィードバックをお待ちしております。

ニコ

これは私の LDAP 構成です

# 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}))
4

3 に答える 3

0

同様の問題があり、WindowsAuthenticationHelper によって検出されたグループと一致するグループを SonarQube で作成することで解決されました。

Sonar Admins@Domainあなたの場合、これはorと呼ばれる SonarQube グループが必要であることを意味しますSonar Users@Domain

再度ログインすると、ユーザーはこのグループに自動的に追加されます。

于 2016-06-10T09:23:03.357 に答える
0

LDAP プラグインの代わりに使用できる新しい Active Directory プラグインが利用可能になりました。この投稿の時点では、まだリリース候補 (RC) であることに注意してください。このバージョンは Update Center に表示されません。

https://github.com/SonarQubeCommunity/sonar-activedirectory/

プラグインはリリースタブからダウンロードできます。

ウェス

于 2016-06-10T17:34:18.953 に答える