Currently used authentication scheme is displayed on the Administration | Global Settings page.
Switching Authentication Scheme
To switch from one authentication scheme to another you need to edit <TeamCity data directory>/config/main-config.xml file on the server machine. Change the value of class attribute of <login-module> tag inside <auth-type> tag.
Supported values for class attribute are:
jetbrains.buildServer.serverSide.impl.auth.DefaultLoginModule for Default Authentication
jetbrains.buildServer.serverSide.impl.auth.NTDomainLoginModule for Windows Domain Authentication
jetbrains.buildServer.serverSide.impl.auth.LDAPLoginModule for LDAP Authentication
Please note that each authentication type maintains own list for users. This means that on switching from one authentication to another you start with no users (and no administrator) and will be prompted for administrator account on first TeamCity start after the authentication change. This also means that all the existing users will need to create their accounts and re-enter their settings anew.
If you are not prompted for administrator account on switching to a new scheme, this means that there are users in the scheme already.
Please refer to How To...#Retrieve Administrator Password section for a resolution.
Example of the relevant main-config.xml file section:
Users database is maintained by TeamCity. New users are added by TeamCity administrator (in administration area at the Users page) or user are self-registered if <free-registration allowed="true" /> tag is specified.
Windows Domain Authentication
See also NTLM HTTP Authentication for transparent login withotu manual credentials entering: Single sign-on based on Windows domain authentication.
To log in to TeamCity users should provide their user name in the form DOMAIN\user.name and their domain password. <username>@<domain> login name syntax is also supported.
It is also possible to log in using only a username if the domain is specified in ntlm.defaultDomain property of <TeamCity data directory>/config/ntlm-config.properties file.
Since TeamCity 7.1 when running under Windows TeamCity server uses Waffle library for authentication by default.
Under Linux, JCIFS library is used for the Windows domain login.
The following settings in <TeamCity data directory>/config/ntlm-config.properties file are obsolete and are not recommended for usage. Please comment them out and report any issues that you have with the configuration.
jCIFS Library Specific Configuration
The library is configured using the properties specified in <TeamCity data directory>/config/ntlm-config.properties file. Changes to the file take effect immediately without server restart.
If default settings does not work for your environment, please refer to http://jcifs.samba.org/src/docs/api/ for all available configuration properties.
If the library does not find domain controller to authenticate against, consider adding jcifs.netbios.wins property in the ntlm-config.properties file with address of your WINS server. For other domain services locating properties, see http://jcifs.samba.org/src/docs/resolver.html.