TeamCity LDAP同步对VCS属性不起作用



我已经为LDAP登录配置了TeamCity(8.1.4),它像广告中宣传的那样工作,包括displayname和电子邮件的同步。但是我有一个VCS属性同步的问题。

正在创建新用户(当他们第一次登录时),而没有填充他们的显示名称或电子邮件地址。当同步发生时,这将得到补救,因此我知道同步适用于这些属性。我需要"默认为所有VCS根"属性填写正确,虽然。这是必需的,这样人们就可以匹配他们的签入(目前还没有发生),所以当他们破坏测试时,他们可以通过电子邮件发送。

"Default for all VCS root"属性只是被填充为用户名,但我需要它是DOMAINusername。

我的设置:

    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$

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

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

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

最新更新