Contraseña de administrador olvidada de TeamCity - ¿dónde buscar?


Necesito recuperar/restablecer la contraseña de administrador de JetBrain TeamCity.

Tengo acceso RDP completo al servidor, así que no hay problemas allí. Solo han pasado 2 meses desde que lo usamos, así que ahora he olvidado mi inicio de sesión, mis habituales no funcionan.

Está configurado sin una base de datos en este momento, por lo que esperaba que los nombres de usuario solo estuvieran en un archivo en algún lugar, pero no hubo suerte encontrándolo hasta ahora.

 62
Author: Makoto, 2009-02-03

17 answers

En caso de que ninguna de esas obras, ver http://sebastienlachance.com/post/Resetting-TeamCity-Password.aspx .

Abra un símbolo del sistema y vaya a la carpeta \webapps\ROOT\WEB-INF\lib. Ahora escriba lo siguiente:

..\..\..\..\jre\bin\java.exe -cp server.jar;common-api.jar;commons-codec-1.3.jar;util.jar;hsqldb.jar ChangePassword username newpassword
 42
Author: Sebastien Lachance,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-31 21:51:28

Desde TeamCity 8 puedes iniciar sesión como superusuario y cambiar la contraseña de esa manera. Solo necesita usar un nombre de usuario vacío y la última aparición del "token de autenticación de superusuario" que se encuentra en logs\teamcity-server.archivo de registro como contraseña.

Por favor, consulte lo siguiente para obtener más información:

 76
Author: tentonipete,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-26 00:27:59

Para TeamCity 6.5.4

Desde un símbolo del sistema en la carpeta de instalación de [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

Mi nombre de usuario era 'admin' en mi caso (creo que lo configuré durante la instalación, pero no puedo estar seguro).

He enviado el argumento path to TeamCity, es lo suficientemente inteligente como para usar la ruta correcta (la mía era c:\users\administrator.buildServer)

Cuando proporcioné la ruta (incorrecta) a TeamCity como argumento recibí este mensaje:

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)

En caso de que esto confunde a otras personas también.

 5
Author: Andrew Myhre,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-11-10 19:37:53

Puede intentar restablecer la instalación de TeamCity, eliminando el directorio de datos de TeamCity ($/.BuildServer directorio por defecto)

 4
Author: VonC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-10-07 13:03:35

Intente lo siguiente:

Primero detenga el servicio TeamCity (también detendría el agente de compilación si está instalado). A continuación, abra una consola, vaya a su directorio java y ejecute el siguiente comando desde allí:

java.exe -cp server.jar; hsqldb.jar ChangePassword USERNAME PASSWORD "PATH_TO_YOUR_TEAMCITY_INSTALLATION".BuildServer
 3
Author: Flo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-02-17 23:28:39

Acabo de tener que pasar por este dolor con v5 EAP.

Me las arreglé para restablecer la contraseña con éxito ejecutando:

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

Aunque tendrás que sustituir C:\TeamCity con dondequiera que se encuentre su instalación.

 3
Author: Brian Hinchey,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-11-04 04:27:59

En caso de que esto ayude a alguien más, quien haya instalado TeamCity en mi servidor colocó el directorio de compilación bajo el Perfil del Administrador, no en C:\TeamCity.

 2
Author: strattonn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-12-21 16:55:51

Específicamente para TeamCity que se ejecuta en Tomcat en Windows será C:\ProgramData\JetBrains\TeamCity

El directorio especificado como último parámetro debe ser su Directorio de datos (buscar en /logs/teamcity-server.log)

Obtendrá el error 'Table not found' si no tiene esto correcto.

Obtendrá un error 'La base de datos ya está en uso' si tiene TeamCity en ejecución.

También puede buscar en /logs/teamcity-server.registrar para ver si ha creado admin, administrador, o algún otro nombre de usuario administrador.

 2
Author: Michael Angstadt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-09-25 01:22:30

Para todos los que puedan llegar a este artículo años después de la respuesta original como acabo de hacer, hay una cuenta de superusuario incorporada, y la contraseña se regenera cada vez que se inicia team city, y la contraseña está en el registro. Puede usar este superusuario para iniciar sesión y restablecer cualquier contraseña. Es súper fácil.

Https://confluence.jetbrains.com/display/TCD9/Super + Usuario

 2
Author: arri.io,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-06-22 01:24:09

TeamCity siempre usa una base de datos - si no ha configurado explícitamente una, utiliza una base de datos HSQLDB para almacenar datos internamente.

Cuando se utiliza una base de datos externa, la información del usuario se almacena dentro de esa base de datos, por lo que parece bastante probable que la información del usuario en su caso se almacene dentro del sistema HSQLDB.

Es posible que pueda obtener acceso al sistema al explorar la base de datos, pero le sugiero que primero realice una copia de seguridad.

Segundo sugerencia: envía un correo electrónico a los chicos de soporte de JetBrains. Incluso antes de que mi lugar de trabajo recibiera una licencia de TeamCity Enterprise, su soporte era excelente: rápido, preciso y útil.

 1
Author: Bevan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-02-03 08:59:55

Con TeamCity 5 usando MySQL (probablemente otras versiones y RDBMs también, pero no probado), es posible actualizar la contraseña directamente a través de SQL:

mysql> update users set password = md5("mypass123") where username = "bob";

Sin embargo, me quedaría con las versiones de CLI ya mencionadas por otros si no hay una buena razón para no hacerlo.

 1
Author: sfussenegger,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-11-23 13:45:52

El primer punto es si cierra la sesión, la pantalla de inicio de sesión ya tiene el nombre de usuario 'TCAdmin' rellenado, cuando debería ser 'administrator'. TCAdmin es el nombre completo (creo) del usuario administrador predeterminado de la versión 5. Cambiando eso a administrador y luego usando la contraseña pensé que había resuelto mi problema.

Para restablecer... En caso de que ayude a alguien más en Windows XP en la versión 5 de TeamCity, mi .La información de configuración de buildServer también estaba en mis documentos y configuraciones de usuario con sesión actual carpeta. También me tropezó un espacio en la lista de archivos jar en la buena respuesta de Sebastien anterior.

Así que cambié a este directorio en un símbolo del sistema:

 c:\teamcity\webapps\ROOT\WEB-INF\lib 

Y luego esta línea de comandos (para establecer la contraseña: Password1) funcionó para mí:

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

Que dio salida:

Using TeamCity configuration directory path: C:/Documents and Settings/tamw/.BuildServer 
Password changed successfuly
 1
Author: TamW,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-04 03:13:57
  1. Stop teamcity
  2. Deberías pasar path a tu buildserver por ejemplo, si ha instalado build server en dir " c:\.buildServer "

........\jre \ bin \ java.servidor exe-cp.jar; common-api.jar; commons-codec-1.3.jar; util.jar; hsqldb.jar ChangePassword nombre de usuario newpassword c:\.buildServer

 1
Author: syned,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-23 18:22:35

Esto es lo que funcionó para mí.

Apagar servicios de servidor

> cd c:\TeamCity\webapps\ROOT\WEB-INF\lib>

Entonces

> ..\..\..\..\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\

Sin el camino al final, fallaría con:

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)
 1
Author: Adam Maloney,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-04-17 10:03:22

Estamos usando Teamcity 7 con MS SQL Server como RDBMS.

Para restablecer su contraseña, puede utilizar la siguiente consulta:

UPDATE users SET password = LOWER(SUBSTRING(sys.fn_sqlvarbasetostr(HASHBYTES('md5','your_new_password')),3,32))
 where username = "your_user_name";
 1
Author: Zafer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-11-05 16:47:43

Para cambiar la contraseña de usuario:

Servidor de apagado

Cambie al directorio/webapps/ROOT/WEB-INF / lib

Invoca el siguiente comando:

Plataforma de Windows: servidor java-cp.jar; common-api.jar; commons-codec-1.3.jar; util.jar; hsqldb.jar ChangePassword

Plataforma Unix: servidor java-cp.jar: common-api.jar: commons-codec-1.3.jar: útil.jar: hsqldb.jar ChangePassword

Puede omitir la opción, si está utilizando la ruta predeterminada para los archivos de datos de TeamCity: /.buildServer

[Ref: http://confluence.jetbrains.com/display/TCD7/Changing+user+password+with+default+authentication+scheme]

 0
Author: Say2Manuj,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-04-15 07:33:12

Alternativamente, puede usar el Registro del servidor de TeamCity y recuperar el token de Superusuario.

Usando el token, vaya a la URL : http://(server):(port)/login.html?super=1

Ie: http://localhost:92/login.html?super=1

Una vez que haya iniciado sesión, siempre puede crear un nuevo usuario o restablecer la contraseña de la cuenta en cuestión.

 0
Author: Lankan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-10-06 10:59:30