TeamCity забыли пароль администратора-где искать?
Мне нужно восстановить/сбросить пароль администратора продуктами компании JetBrains по TeamCity.
У меня есть полный RDP доступ к серверу, так что никаких проблем нет. Прошло всего 2 месяца с тех пор, как мы его использовали, поэтому теперь я забыл свой логин - мои обычные не работают.
на данный момент он настроен без базы данных, поэтому надеялся, что имена пользователей будут просто где-то в файле, но пока не удалось найти его.
17 ответов:
в случае, если ни одна из этих работ, см. http://sebastienlachance.com/post/Resetting-TeamCity-Password.aspx.
Откройте командную строку и перейдите в папку \webapps\ROOT\WEB-INF\lib. Теперь введите следующее :
..\..\..\..\jre\bin\java.exe -cp server.jar;common-api.jar;commons-codec-1.3.jar;util.jar;hsqldb.jar ChangePassword username newpassword
из TeamCity 8 вы можете войти в систему как суперпользователь и изменить пароль таким образом. Вам просто нужно использовать пустое имя пользователя и последнее вхождение "маркера аутентификации суперпользователя", найденного в logs\teamcity-server.файл журнала в качестве пароля.
дополнительную информацию см. ниже:
Для TeamCity 6.5.4
из командной строки в папке установки [TeamCity]\webapps\ROOT\WEB-INF\lib:
..\..\..\..\jre\bin\java -cp server.jar;common-api.jar;commons-codec-1.3.jar;util.jar;hsqldb.jar ChangePassword admin NewPasswordмое имя пользователя было "admin" в моем случае (я думаю, что я установил его во время установки, но я не могу быть уверен).
Я ommitted путь к аргументу TeamCity, он достаточно умен, чтобы использовать правильный путь (мой был c:\users\administrator.BuildServer)
когда я предоставил (неправильный) путь к TeamCity в качестве аргумента я получил это сообщение:
Using TeamCity configuration directory path: c:/TeamCity/.BuildServer Exception in thread "main" java.sql.SQLException: Table not found in statement [UPDATE users SET PASSWORD = ? WHERE USERNAME = ? AND REALM IS NULL] at org.hsqldb.jdbc.Util.throwError(Util.java:58) at org.hsqldb.jdbc.jdbcPreparedStatement.<init>(jdbcPreparedStatement.java:1833) at org.hsqldb.jdbc.jdbcConnection.prepareStatement(jdbcConnection.java:580) at ChangePassword.main(ChangePassword.java:14)в случае, если это смущает других людей тоже.
попробуйте следующее:
сначала остановите службу TeamCity (также остановит агент сборки, если он установлен). Затем откройте консоль, перейдите в каталог java и выполните следующую команду оттуда:
java.exe -cp server.jar; hsqldb.jar ChangePassword USERNAME PASSWORD "PATH_TO_YOUR_TEAMCITY_INSTALLATION".BuildServer
Мне просто пришлось пройти через эту боль с v5 EAP.
мне удалось успешно сбросить пароль с помощью команды:
C:\TeamCity\webapps\ROOT\WEB-INF\lib>..\..\..\..\jre\bin\java -cp server.jar;common-api.jar;commons-codec-1.3.jar;util.jar;hsqldb.jar ChangePassword admin password c:\TeamCity\.BuildServerхотя вам нужно будет заменить C:\TeamCity с везде, где ваша установка расположена.
в случае, если это поможет кому-то еще, тот, кто установил TeamCity на моем сервере, разместил каталог сборки под профилем администратора, а не в C:\TeamCity.
специально для TeamCity работает на Tomcat на Windows это будет C:\ProgramData\JetBrains\TeamCity
каталог, указанный в качестве последнего параметра, должен быть вашим каталогом данных (найти в /logs/teamcity-server.журнала)
вы получите "таблица не найдена" ошибка, если у вас нет этого правильно.
вы получите "база данных уже используется" ошибка, если у вас есть TeamCity работает.
вы также можете искать вас / журналы / teamcity-server.бревно чтобы узнать, создали ли вы admin, administrator или какое-либо другое имя пользователя admin.
для всех, кто может прибыть в эту статью через несколько лет после первоначального ответа, как я только что сделал, есть встроенная учетная запись суперпользователя, и пароль восстанавливается каждый раз, когда запускается team city, и пароль находится в журнале. Вы можете использовать этого суперпользователя для входа и сброса любых паролей. Это очень просто.
https://confluence.jetbrains.com/display/TCD9/Super + пользователь
TeamCity всегда использует базу данных - если вы явно не настроили ее, это использует базу данных HSQLDB для хранения данных внутри.
при использовании внешней базы данных информация о пользователе хранится в этой базе данных, поэтому вполне вероятно, что информация о пользователе в вашем случае будет храниться в системе HSQLDB.
вы можете получить доступ к системе, продолжая работать с базой данных - но я бы предложил сделать резервную копию первый.
второе предложение-бросьте парней поддержки в JetBrains по электронной почте. Еще до того, как мое рабочее место выплеснулось на лицензию TeamCity Enterprise, их поддержка была превосходной - быстрой, точной и полезной.
С помощью TeamCity 5 с использованием MySQL (возможно, и других версий и СУБД, но непроверенных) можно обновить пароль непосредственно через SQL:
mysql> update users set password = md5("mypass123") where username = "bob";тем не менее, я бы придерживался версий CLI, уже упомянутых другими, если нет веской причины не делать этого.
во-первых, если вы выходите из системы, на экране входа уже заполнено имя пользователя "TCAdmin", когда оно должно быть "администратор". TCAdmin-это полное имя (я думаю) пользователя администратора версии 5 по умолчанию. Изменив это на администратора, а затем используя пароль, я думал, что это решило мою проблему.
для сброса... В случае, если это поможет кому-то еще на Windows XP на версии 5 TeamCity, my .Информация о конфигурации BuildServer также была под моими текущими зарегистрированными документами пользователя и папка настроек. Также я был сбит с толку пробелом в списке файлов jar в хорошем ответе Себастьяна выше.
поэтому я перешел в этот каталог в командной строке:
c:\teamcity\webapps\ROOT\WEB-INF\libи тогда эта командная строка (чтобы установить пароль: Password1) работала для меня:
C:\TeamCity\webapps\ROOT\WEB-INF\lib>..\..\..\..\jre\bin\java.exe -cp server.jar;commonapi.jar;commons-codec-1.3.jar;util.jar;hsqldb.jar ChangePassword administrator Password1, которая дала выход:
Using TeamCity configuration directory path: C:/Documents and Settings/tamw/.BuildServer Password changed successfuly
- остановить teamcity
- вы должны передать путь к вашему buildserver например, если вы установили сервер сборки в dir " c:\.BuildServer"
........\jre\bin\java.exe-cp сервер.jar; common-api.jar; commons-codec-1.3.банку;утиль.jar;hsqldb.jar ChangePassword имя пользователя newpassword c:\.BuildServer
вот что сработало для меня.
выключить серверные службы
> cd c:\TeamCity\webapps\ROOT\WEB-INF\lib>затем
> ..\..\..\..\jre\bin\java.exe -cp server.jar ;common-api.jar;commons-codec-1.3.jar;util.jar;hsqldb.jar ChangePassword admin password1 C:\ProgramData\JetBrains\TeamCity\без пути в конце, он потерпел бы неудачу с:
Exception in thread "main" java.sql.SQLException: Table not found in statement [ UPDATE users SET PASSWORD = ? WHERE USERNAME = ? AND REALM IS NULL] at org.hsqldb.jdbc.Util.throwError(Util.java:58) at org.hsqldb.jdbc.jdbcPreparedStatement.<init>(jdbcPreparedStatement.ja va:1833) at org.hsqldb.jdbc.jdbcConnection.prepareStatement(jdbcConnection.java:5 80) at ChangePassword.main(ChangePassword.java:14)
мы используем Teamcity 7 С MS SQL Server в качестве СУБД.
для сброса пароля вы можете использовать следующий запрос:
UPDATE users SET password = LOWER(SUBSTRING(sys.fn_sqlvarbasetostr(HASHBYTES('md5','your_new_password')),3,32)) where username = "your_user_name";
изменить пароль пользователя:
завершение работы сервера
перейдите в каталог/webapps/ROOT/WEB-INF / lib
вызовите следующую команду:
платформа Windows: java-cp сервер.jar; common-api.jar; commons-codec-1.3.банку;утиль.jar;hsqldb.jar ChangePassword
платформа Unix: java-cp сервер.банки:общий-АФИ.jar: commons-codec-1.3.банки:утиль.jar:hsqldb.jar ChangePassword
вы можете пропустить эту опцию, если вы используете путь по умолчанию для файлов данных TeamCity: /.BuildServer
[Ref: http://confluence.jetbrains.com/display/TCD7/Changing+user+password+with+default+authentication+scheme]
кроме того, вы можете использовать журнал сервера TeamCity и получить маркер суперпользователя.
используя токен, перейдите по URL:http:/ / (server): (port) / login.HTML-код?супер=1
ie:http://localhost:92/login.HTML-код?супер=1
после того как вы вошли в систему, вы всегда можете создать нового пользователя или сбросить пароль для аккаунта.
Comments