TeamCity LDAP同步不适用于VCS属性

时间:2014-08-08 08:44:24

标签: active-directory ldap teamcity teamcity-8.0

我已经为LDAP登录配置了TeamCity(8.1.4),它的工作方式与广告一样,包括displayname和email的同步。但是我遇到了VCS属性同步的问题。

正在创建新用户(首次登录时),而不会填充其显示名称或电子邮件地址。当同步发生时,这可以解决,因此我知道同步适用于这些属性。 我需要正确填写“所有VCS根目录的默认值”属性。这是必需的,以便人们可以匹配他们的签到(目前没有发生),因此他们可以在他们中断测试时通过电子邮件发送。

“所有VCS根目录的默认值”属性只是填充为用户名,但我需要它为DOMAIN \ username。

我的设置:

    java.naming.provider.url=ldap://my.domaincontroller.com:389/DC=mydomain,DC=local
    java.naming.security.principal=monkey
    java.naming.security.credentials=bubbles
    teamcity.users.base=OU=group2,OU=Users
    teamcity.users.login.filter=(sAMAccountName=$capturedLogin$)
    teamcity.users.username=sAMAccountName
    teamcity.auth.loginFilter=.*
    teamcity.options.users.synchronize=true
    teamcity.users.filter=(objectClass=user)
    teamcity.options.groups.synchronize=false
    teamcity.options.createUsers=false
    teamcity.options.deleteUsers=false
    teamcity.options.syncTimeout = 3600000
    teamcity.groups.property.member=member
    teamcity.users.property.displayName=displayName
    teamcity.users.property.email=mail
    teamcity.users.property.plugin\:vcs\:anyVcs:anyVcsRoot=mydomain\\$sAMAccountName$

1 个答案:

答案 0 :(得分:0)

您可以使用LDAP的设置来实现此目的,但是当我们在项目中进行设置时遇到了一些问题。我们有多种类型的VCS repo,当我们开始转移到Git时,我们的存储库只是没有将用户名存储在DOMAIN //用户名语法中。

更好的方法是更新teamcity数据库中的用户表,将所有基于TFS的根的默认用户ID设置为DOMAIn / username。这是语法

insert into user_property
values(<user_id>,'plugin:vcs:jetbrains.**tfs**:anyVcsRoot','DOMAIN//username')