AD ドメインでユーザーを認証できるように、SonarQube 5.6 用の LDAP 2.0 プラグインを構成しようとしています。sonar.log では、次のフィードバックが得られます。
2016.09.12 10:55:16 INFO web[osspServerPluginRepository] Deploy plugin C# / 5.3.1 / 6d9c99cb816b5d82ee23b51dbb05f9ee37a3bf2d 2016.09.12 10:55:16 INFO web[osspServerPluginRepository] Deploy plugin JavaScript / 2.11 / a9b1afa9ceef7079811779d9efc5f8026acb1400 2016.09.12 10:55:16 INFO web[osspServerPluginRepository] Deploy plugin LDAP / 2.0 / 2910f3981167a70a201ccfae01471dfd26c794b7 2016.09.12 10:55:16 INFO web[osspServerPluginRepository] Deploy plugin Web / 2.4 / 61c14c00da36f77d18c019ad2bd7942708e99c13 2016.09.12 10:55:16 INFO web[osdcMssqlCharsetHandler] Verify that database columns are大文字と小文字とアクセントを区別する 2016.09.12 10:55:16 INFO web[osspRailsAppsDeployer] Ruby on Rails アプリケーションのデプロイ 2016.09.12 10:55:16 INFO web[osspRailsAppsDeployer] アプリのデプロイ: ldap 2016.09.12 10:55:18 INFO web[osspUpdateCenterClient] 更新センター:http://update.sonarsource.org/update-center.properties (プロキシなし) 2016.09.12 10:55:18 INFO web[org.sonar.INFO] セキュリティ レルム: LDAP 2016.09.12 10:55:18 INFO web [osplLdapSettingsManager] ユーザー マッピング: LdapUserMapping{baseDn=ou=****,dc=****,dc=****, request=(&(objectClass=User)(sAMAccountName={0})), realNameAttribute =Displayname, emailAttribute=mail} 2016.09.12 10:55:18 INFO web[osplLdapSettingsManager] グループ マッピング: LdapGroupMapping{baseDn=ou=****,dc=****,dc=****,idAttribute= cn, requiredUserAttributes=[dn], request=(&(objectClass=Group)(name={0}))} 2016.09.12 10:55:18 INFO web[osplLdapContextFactory] ldap://*** で LDAP 接続をテストします*:389: OK 2016.09.12 10:55:18 INFO web[org.sonar.INFO] セキュリティ レルムが開始されました
セキュリティ レルムは開始されますが、ログイン試行は成功しません。ログイン試行中に sonar.log に次のエラーが記録されます。
ERROR web[rails] 外部ユーザー プロバイダーからのエラー: 例外 Java::OrgSonarApiUtils::SonarException: ユーザー **** の詳細を取得できません
sonar.properties に次の構成を追加しました。
# LDAP configuration
# General Configuration
sonar.security.realm=LDAP
ldap.url: ldap://****:389
sonar.forceAuthentication=true
ldap.windows.compatibilityMode = true
# User Configuration
ldap.user.baseDn=ou=***,dc=***,dc=***
ldap.user.request=(&(objectClass=User)(sAMAccountName={login}))
ldap.user.realNameAttribute=Displayname
ldap.user.emailAttribute=mail
# Group Configuration
ldap.group.baseDn=ou=***,dc=***,dc=***
ldap.group.request=(&(objectClass=Group)(name={dn}))
管理者でもユーザーを見つけることができません。別のツールを使用してリクエスト クエリ (&(objectClass=User)(sAMAccountName={login})) をテストしたところ、正常に動作しました。ユーザーをどのように承認する必要があるのか 疑問に思っています。ユーザー ページ (管理/セキュリティ) で利用できるようにする必要がありますか?