2011-05-06 39 views
70

¿Hay alguna manera de recuperar una contraseña desde el caché local? La contraseña debe almacenarse en alguna parte porque puedo ejecutarRecuperar contraseña de SVN desde el caché local

svn co http://my.svn.server/foo 

pero he perdido la contraseña. ¿Tengo que restablecerlo o es posible (y cómo) encontrar y descifrar la contraseña? Estoy usando CLI SVN en Windows, a veces cambiando a TortoiseSVN o IntelliJ Idea SVN.

+0

posible duplicado de [Extracto TortoiseSVN guarda la contraseña.] (Http://stackoverflow.com/questions/3883129/extract-tortoisesvn- contraseña-guardada) – Piskvor

+6

Esto no es un duplicado, TortoiseSVN es una pieza de software diferente a svn y probablemente guarda en caché las contraseñas de una manera completamente diferente. –

Respuesta

131

En Windows, Subversion almacena los datos de autenticación en %APPDATA%\Subversion\auth. Sin embargo, las contraseñas se almacenan encriptadas, no en texto plano.

Puede descifrarlos, pero solo si inicia sesión en Windows como el mismo usuario para el que se guardaron los datos de autenticación.

Alguien incluso escribió una herramienta para descifrar esos. Nunca había probado la herramienta, así que yo no sé qué tan bien funciona, pero es posible que desee probar de todos modos:

http://www.leapbeyond.com/ric/TSvnPD/

Actualización: En TortoiseSVN 1.9 y posteriores, puede hacerlo sin necesidad de herramientas adicionales :

Settings Dialog ->Saved Data, a continuación, haga clic en el botón "Clear..." derecha del texto "Authentication Data". Aparece un nuevo cuadro de diálogo que muestra todos los datos de autenticación almacenados donde puede elegir cuál (es) borrar. En lugar de borrar, mantenga presionado el botón Shift y Ctrl, y luego double click en la lista. Se muestra una nueva columna en el cuadro de diálogo que muestra la contraseña en claro.

+16

Hola Stefan, la herramienta que recomienda funciona muy bien. –

+0

El programa vinculado también funciona con repositorios creados y gestionados a través de Eclipse. El nombre del programa es un poco engañoso en ese sentido. –

+0

Sí, el nombre es engañoso. IntelliJ también usa esta ubicación por defecto. Parece que su ubicación está destinada a todos los clientes svn para compartir. –

46

En ~/.subversion/auth/svn.simple/ debe encontrar un archivo con un nombre hexadecimal largo. La contraseña está allí en texto plano.

Si hay más de un archivo, necesitará encontrar aquel que haga referencia al servidor para el que necesita la contraseña.

+9

Las contraseñas almacenadas en 'svn.simple' están encriptadas desde [Subversion 1.6] (http://www.linuxforu.com/previews/subversion-16-security-improvements-illustrated/). – dolmen

+1

Mine reference gnome-keyring pero no puede ver nada relevante en mi llavero –

+3

Si tiene una referencia al gnome-keyring, su contraseña puede almacenarse simplemente como "contraseña de red". – diedthreetimes

31

Para aquellos interesados ​​en la solución de OS X para aplicaciones como Intelli-J, donde autorizaciones se almacenan por OSX:

  1. Hit CMD + ESPACIO
  2. Tipo "llavero"
  3. acceso llavero abierto
  4. en "Llaveros" a la izquierda, seleccione "login"
  5. en "Categoría" a la derecha, seleccione "Todos los elementos"
  6. en la parte superior derecha de la s cuadro de búsqueda, escriba la URL del host (p. svn.mycompany.com)
  7. Su artículo de llavero se mostrará si elige que su Mac recuerde sus credenciales de inicio de sesión.
  8. Haga doble clic en el elemento y marque la casilla de verificación "Mostrar contraseña" en la parte inferior del cuadro de diálogo que aparece. Deberá ingresar su nombre de usuario de Mac para revelar la contraseña.

Mucho más fácil que tener que tratar de descifrar una contraseña :-)

+1

¡Esto es un ahorro! Gracias. – Manny

+0

Se aplica a la línea de comandos svn (1.8.13) también. – atamanroman

+1

Guau, no sabía esto antes. ¡Muchas gracias! – drg

1

Las contraseñas SVN en Ubuntu (12.04) están en:

~/.subversion/auth/svn.simple/ 

Sin embargo, en las versiones más recientes están encriptados, como alguien mencionó anteriormente. Para encontrar las contraseñas de gnome-keyring, le sugiero que utilice el programa 'gkeyring'.

Para instalarlo en Ubuntu - añadir repositorio:

sudo add-apt-repository ppa:kampka/ppa 
sudo apt-get update 

instalarlo:

sudo apt-get install gkeyring 

y ejecutar la siguiente manera:

gkeyring --id 15 --output=name,secret 

Pruebe diferentes identificadores de clave para encontrar los correspondientes pares Qué estás buscando. Gracias a kampka por lo suave.

+2

En Ubuntu, es suficiente utilizar la utilidad predeterminada * Contraseñas y claves * para revelar todas sus contraseñas. ¡Me sorprendió muchísimo la cantidad de cuentas de usuario y contraseñas almacenadas allí! Ayudado a descubrir la contraseña olvidada de SVN también. – shadyyx

1

Simplemente use este descifrador para descifrar su nombre de usuario local en caché & contraseña.

De forma predeterminada, TortoiseSVN almacena sus credenciales en caché dentro de los archivos en el directorio% APPDATA% \ Subversion \ auth \ svn.simple. Las contraseñas se cifran utilizando la API de protección de datos de Windows, con una clave vinculada a su cuenta de usuario. Esta herramienta lee los archivos y utiliza la API para descifrar las contraseñas

svn password decryptor

+0

funcionó para mí. –

Cuestiones relacionadas