【发布时间】:2024-01-13 10:06:01
【问题描述】:
我在 Windows Server 2016 上使用 LDAP 插件 2.2 运行 Sonarqube 6.7.1.35068。我有 LDAP 工作,因为新用户可以使用他们的域凭据登录 Sonarqube 并创建一个帐户,但我的组过滤器不起作用。我正在尝试根据特定的 AD 安全组成员身份过滤登录,但不幸的是,域中的所有用户都能够登录,因为组过滤不起作用。以下是我在属性文件中的 LDAP 配置:
#----- LDAP configuration
# General Configuration
sonar.security.realm=LDAP
sonar.authenticator.downcase=true
ldap.url=ldap://ldap.domain.com:3268
ldap.bindDn=serviceaccount@ad.domain.com
ldap.bindPassword=********
# User Configuration
ldap.user.baseDn=dc=ad,dc=domain,dc=com
ldap.user.request=(&(objectClass=user)(sAMAccountName={login}))
ldap.user.realNameAttribute=cn
ldap.user.emailAttribute=mail
# Group Configuration
ldap.group.baseDn=CN=Sonarqube,OU=Software Access,OU=Security Groups,OU=AD Groups,DC=ad,DC=domain,DC=com
ldap.group.request=(&(objectClass=group)(memberOf={dn}))
ldap.group.idAttribute=sAMAccountName
我为 ldap.group.baseDn 和 ldap.group.request 值,但基于 AD 组成员身份的用户过滤没有任何成功。遗憾的是,没有关于如何为 Sonarqube 配置这两个值的具体详细示例。有人吗?
【问题讨论】:
-
您希望您的 LDAP 过滤不匹配,因此不对不属于某些组成员的用户进行身份验证?
-
是的,完全正确。如果用户是 Sonarqube AD 安全组的成员,则允许他们登录到 Sonarqube。如果用户不是 Sonarqube AD 安全组的成员,则不允许他们登录到 Sonarqube。
-
那么这与 SonarQube 本身没有关系,是吗?
-
与Sonarqube的LDAP组配置所需的语法有关。我在我的所有工程解决方案(JIRA、Jenkins 等)中都有这个功能。我需要澄清使用 Sonarqube LDAP 组配置基于 AD 组成员身份成功过滤用户所需的语法。提供的文档未提供必要的详细信息。
-
您在寻找this吗?